Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Batch & Shell

GELÖST

Gleichnamige Dateien in verschiedenen Ordnern, in einen Ordner kopieren und umbennen

Mitglied: plaaner

plaaner (Level 1) - Jetzt verbinden

27.11.2008, aktualisiert 15.12.2008, 9170 Aufrufe, 7 Kommentare

Guten morgen alle zu sammen,
ich habe folgendes problem, wie schon im Titel gesagt möchte ich gleichnamige dateien aus mehreren Ordner kopieren und in ein einfügen. Da die dateien den gleichen Namen haben über schleifen sie sich (ist logisch) immer.

hier das was ich hab:

for /F %%i in (test.bak) do @for /f %%x in (namen.bak) do xcopy "%%i" "C:\test\%%x.jpg"

zuerst lese ich die test.bak aus, in dieser datei sind die jeweiligen pfade der dateien drinn :
c:\11\831\bild.jpg
c:\11\832\bild.jpg
c:\11\833\bild.jpg
.........
dann wollte ich die namen in dem falle sind es zahlen aus der namen.bak auslesen, aber es wird alles ausgelesen aus der namen.bak und und dann wird erst der nächste pfad aus der test.bak genommen, also habe ich eben immer das gleiche bild zb. 300 mal mit verschiedenen dateinamen....

habt ihr ne idee wie ich ein pfad (aus der test.bak) ,einen namen aus der namen.bak nehem kann und dann kopieren... usw also nach und nach die beiden dateien auslesen

noch als Information ich nutze Win Xp Sp2

ich hoffe ihr könnt mir helfen
Mitglied: bastla
27.11.2008 um 10:48 Uhr
Hallo plaaner und willkommen im Forum!

Das sollte etwa so zu machen sein:
for /F "tokens=1* delims=:" %%i in ('findstr /n "^" test.bak') do for /f "tokens=1* delims=:" %%x in ('findstr /n "^" namen.bak^|findstr /b "%%i:"') do echo copy "%%j" "C:\test\%%y.jpg"
Das "echo" vor dem "copy" (was hätte aus Deiner Sicht für "xcopy" gesprochen?) soll das Testen vereinfachen, da so die "copy"-Befehle nur angezeigt, aber noch nicht ausgeführt werden.

Grüße
bastla

[Edit] Zweites Prozentzeichen bei findstr /b "%%i" nachgetragen [/Edit]
Bitte warten ..
Mitglied: Biber
27.11.2008 um 10:56 Uhr
Moin plaaner,

willkommen im Forum.
<OT>
Gleichnamige Dateien in verschiedenen Ordnern, in einen Ordner kopieren und umbennen
Die übliche Frage an (fast) alle PosterInnen eines derartigen Beitrags

WTF ist an dem Wort umbenennen so schwierig und warum sagt ihr dann nicht lieber umbenamsen ???....

</OT>

Grüße
Biber
Bitte warten ..
Mitglied: plaaner
27.11.2008 um 11:47 Uhr
@ bastla danke erstmal für deine hilfe aber es geht nich so richtig..... wo ich nich dahinter gestiegen bin: wie nimmst du findstr ?
@Biber entschuldigung das ich mich vertippt hab....^^
Bitte warten ..
Mitglied: bastla
27.11.2008 um 11:56 Uhr
Hallo plaaner!

wie nimmst du findstr ?
Das kannst Du ja einmal einzeln nachvollziehen (direkt an der Kommandozeile):
findstr /n "^" test.bak
sollte mit den Testdaten von oben folgende Ausgabe erzeugen:
1:c:\11\831\bild.jpg 
2:c:\11\832\bild.jpg 
3:c:\11\833\bild.jpg
Mit "for /f" wird jede Zeile zerlegt in die Zeilennummer (%%i) und den Rest (%%j = Pfad).

Das Gleiche wird mit den Namen gemacht, nur dass hier, nachdem das erste "findstr" die Zeilennummern erzeugt hat, zusätzlich nach der Nummer (%%i - das zweite Prozentzeichen hat leider oben gefehlt ) aus der "test.bak" gefiltert wird - mit "/b" und der Angabe des ":" sollte sichergestellt sein, dass nur die passende Zeile aus "namen.bak" aus der zweiten "for"-Schleife herauskommt (jetzt mit der Nummer - die nicht weiter interessiert - als %%x und dem Namen als %%y).

Grüße
bastla
Bitte warten ..
Mitglied: plaaner
27.11.2008 um 12:42 Uhr
ok das mit dem %-Zeichen hab voll übersehen^^
dankeschön funktioniert ^

mfg
plaaner
Bitte warten ..
Mitglied: plaaner
15.12.2008 um 23:17 Uhr
Hallo alle zusammen ich mal wieder, ich möchte nichts neues eröffnen deswegen schreibe ich hier rein und zwar geht es diesmal darum das ich das suchkreterium bei find durch eine Variable ersetzen möchte und eben nach dem Inhalt der Variable suchen lassen möchte. so hatte ich mir das eigentlich vorgestellt:

set /p variable= Datum eingeben:

....... find "variable"

... geht aber nicht so...

kann mir jemand helfen?

Mfg plaaner

Ps. morgen schreib ich es nochmal etwas detailierter wie ich das find nutze/nutzen möchte
Bitte warten ..
Mitglied: bastla
15.12.2008 um 23:36 Uhr
Hallo plaaner!

ich möchte nichts neues eröffnen deswegen schreibe ich hier rein
Ist nicht die allerbeste Idee - hier lesen vermutlich nicht viele mit, und falls wir eine Lösung finden, wird das Finden dieser Lösung für andere, die sie auch brauchen könnten, in diesem Thread vermutlich auch nicht ganz einfach ...

....... find "variable"
kann ohnehin nur klappen, wenn Du die Variable zwischen %-Zeichen setzt, also:
....... find "%variable%"
morgen schreib ich es nochmal etwas detailierter wie ich das find nutze/nutzen möchte
... und dann vielleicht doch besser in einen neuen Beitrag.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien im Ordner auslesen und umbennen
Frage von jochengBatch & Shell10 Kommentare

Hi Leute Schönen Feiertag zuerst. Ich habe an diesem leider ein Problem. nutze ich um Bilder aus meinem Bilder ...

Batch & Shell
Ordner mit "." umbennen
gelöst Frage von Dpole86Batch & Shell5 Kommentare

Hallo Zusammen Ich habe einen Ordner. In dem sind weitere Ordner in welchem Dateien liegen (endung XLS) Also Struktur: ...

Batch & Shell
Datein aus mehreren Unterordnern in einen Ordner kopieren und umbennenen
gelöst Frage von hese23Batch & Shell3 Kommentare

Hallo miteinander, habe folgendes Problem: Von mehreren Unterordnern sind jeweils 2 Datentypen enthalten (jpg und jgw) In jeden Ordner ...

Batch & Shell
Dateien kopieren, rekursiv in einen Ordner
gelöst Frage von golsinBatch & Shell9 Kommentare

Hallo und noch ein Frohes neues Jahr ;-) Ich bin mal wieder etwas ratlos Ich Versuche von einem Rechner ...

Neue Wissensbeiträge
Router & Routing

PfSense als Addon auf QNAP

Information von magicteddy vor 34 MinutenRouter & Routing

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 7 StundenDatenschutz

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Microsoft

Letzte Updates für Win10 und Server2016 müssen bei Bedarf über den Update catalogue in den WSUS importiert werden!

Tipp von DerWoWusste vor 12 StundenMicrosoft1 Kommentar

automatisch kommt da nichts an im WSUS und auch nicht im SCCM. Siehe Hinweise zum Bezug der jeweils neuesten ...

Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 3 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement22 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...

Windows Server
Terminal Server 2016 erkennt Berechtigungen nicht
gelöst Frage von Thomas2Windows Server10 Kommentare

Hallo Administratoren, folgendes Problem stellt sich dar: Es gibt zwei Windows Server 2016, die als Terminal Server fungieren. Jetzt ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS10 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...