MOVE mit Zugriff auf txt-Datei?
Hallo, zusammen! Nachdem ich jetzt schon meterlang gesucht habe, muss ich doch einmal einen eigenen Beitrag formulieren...
Ich versuche, rund eine Achtelmillion Dateien via MOVE an einen anderen Ort an den anderen zu bewegen. Das ganze findet in einer *.bat-Datei statt, die dementsprechend viele Zeilen im Format
move "F:\Ordner1\Datei1.suffix" "F:\Ordner2\Datei1_neu.suffix" (rund 180 Zeichen)
Natürlich wird nicht auch nur eine Datei verschoben - sonst wäre es ja auch zu einfach.
The system cannot find the path specified ist die Fehlermeldung, allerdings scheinbar auch nicht für jede Zeile.
Ich persönlich vermute einfach, dass MOVE nicht die beste Wahl ist. Welche Möglichkeit gibt es, die Dateien zu verschieben, gleichzeitig umzubenennen - und dabei am besten auf eine txt- oder csv-Datei zurückzugreifen, die in jeder Zeile durch was auch immer getrennt
"F:\Ordner1\Datei1.suffix";"F:\Ordner2\Datei1_neu.suffix"
enthält.
Vielen Dank vorab!
move "F:\Ordner1\Datei1.suffix" "F:\Ordner2\Datei1_neu.suffix" (rund 180 Zeichen)
Natürlich wird nicht auch nur eine Datei verschoben - sonst wäre es ja auch zu einfach.
The system cannot find the path specified ist die Fehlermeldung, allerdings scheinbar auch nicht für jede Zeile.
Ich persönlich vermute einfach, dass MOVE nicht die beste Wahl ist. Welche Möglichkeit gibt es, die Dateien zu verschieben, gleichzeitig umzubenennen - und dabei am besten auf eine txt- oder csv-Datei zurückzugreifen, die in jeder Zeile durch was auch immer getrennt
"F:\Ordner1\Datei1.suffix";"F:\Ordner2\Datei1_neu.suffix"
enthält.
Vielen Dank vorab!
Please also mark the comments that contributed to the solution of the article
Content-Key: 142448
Url: https://administrator.de/contentid/142448
Printed on: May 4, 2024 at 09:05 o'clock
2 Comments
Latest comment
Hallo Laienkoenig,
willkommen im Forum.
Der MOVE Befehl ist für das Verschieben von Dateien gedacht und deshalb IMO völlig in Ordnung.
Da das Phänomen nur sporadisch auftaucht, vermute ich, dass es mit den im Pfad / Dateinamen enthaltenen Zeichen zusammenhängt. Erfahrungsgemäß sind es Zeichen die von der CMD missinterpretiert oder verschluckt werden. Mein Orakel sagt mir, dass es sich wahrscheinlich um Prozentzeichen (%), Ampersands (&) oder Carets (^) handelt. Falls du mit enabledelayedexpansion arbeitest, kommt auch noch das Ausrufezeichen in Frage.
Prüf mal und gib Rückmeldung.
In dem Zusammenhang dürften diese Zeichen aber keine Rolle mehr spielen, wenn die Pfade wie von dir beschrieben in einer Datei untergebracht werden und in Anführungszeichen stehen.
Für eine *.csv Datei würde der zugehörige Batch-Schnipsel so aussehen:
Grüße
rubberman
willkommen im Forum.
Der MOVE Befehl ist für das Verschieben von Dateien gedacht und deshalb IMO völlig in Ordnung.
Da das Phänomen nur sporadisch auftaucht, vermute ich, dass es mit den im Pfad / Dateinamen enthaltenen Zeichen zusammenhängt. Erfahrungsgemäß sind es Zeichen die von der CMD missinterpretiert oder verschluckt werden. Mein Orakel sagt mir, dass es sich wahrscheinlich um Prozentzeichen (%), Ampersands (&) oder Carets (^) handelt. Falls du mit enabledelayedexpansion arbeitest, kommt auch noch das Ausrufezeichen in Frage.
Prüf mal und gib Rückmeldung.
In dem Zusammenhang dürften diese Zeichen aber keine Rolle mehr spielen, wenn die Pfade wie von dir beschrieben in einer Datei untergebracht werden und in Anführungszeichen stehen.
Für eine *.csv Datei würde der zugehörige Batch-Schnipsel so aussehen:
for /f "usebackq delims=; tokens=1*" %%a in ("schieb a nach b.csv") do move %%a %%b
Grüße
rubberman