Windows-Batchdatei zum Verschieben von Dateien in Unterordner basierend auf dem ersten Wort im Dateinamen?
1289
juzzle
Ich bin ein bisschen Batch-File Noob, also würde ich Ihre Hilfe wirklich schätzen. Ich habe eine Menge Dateien in einem einzigen Verzeichnis gespeichert, die ich basierend auf dem ersten Wort in ihren Dateinamen in Unterordner sortieren möchte. Ich habe also Dateien wie diese:
Ich kann einfach nicht herausfinden, wie man das Skript integriert, um das erste Wort zu packen und ein Verzeichnis zu erstellen, in das die Dateien verschoben werden.
Kannst du mir helfen, dies auf die ganze Linie zu bringen?
2 Antworten auf die Frage
1
LotPings
Verwenden Sie eine, um den Ordnerinhalt %%Amit einem Muster zu durchlaufen, das mindestens ein Leerzeichen enthält.
Ein anderer for /fwird benötigt, um den Namen %%Ain zwei Teile aufzuteilen, einen vor dem ersten Leerzeichen tokens=1= %%Bund den Rest tokens *= %%C.
Wenn ein Ordner mit dem Namen %%Bnicht existiert, erstellen Sie ihn
Verschieben Sie die Originaldatei %%Ain den Unterordner %%Bmit dem Namen%%C
:: Q:\2018\06\11\SU_1330475.cmd @Echo off PushD C:\folder for %%A in ("* *.*") do for /f "tokens=1*" %%B in ("%%A") do ( If not exist "%%B" MD "%%B" Move "%%A" "%%B\%%C" ) PopD
das hat wie ein absoluter Charme funktioniert - danke. Beim Testen mit einer großen Anzahl von Dateien war der einzige Schluckauf, den ich feststellte, dass für Dateien mit doppeltem Speicherplatz nach dem ersten Wort sie überhaupt nicht gehandhabt werden konnten - leicht behoben
juzzle vor 6 Jahren
0
Wenn Sie meine Antwort als nützlich erachten, sollten Sie die Chack-Markierung als Antwort und / oder [hoch bewerten] betrachten (https://superuser.com/help/why-vote).
LotPings vor 6 Jahren
0
-1
Ricardo Bohner
Muss es eine Batchdatei sein?
Ich würde den Hauptordner öffnen, in dem sich alle Dateien und Unterordner befinden. Als nächstes gehen Sie zum Suchfeld in diesem Fenster und geben beispielsweise wedding * ein. Sie wählen alle Dateien aus, indem Sie STRG + A drücken, und dann drücken Sie STRG + X, um zu schneiden.
Sie erstellen einen neuen Ordner mit dem Namen Wedding2018 und drücken Sie STRG + V (Einfügen). Sie tun also für jeden Ordner, den Sie möchten.