Wie kann ich einzelne Textdateien zeilenweise in mehrere Textdateien unterteilen?
Aufbauend auf dem Kommentar von Seth können Sie die folgende Batchdatei verwenden:
@echo off cls setlocal enabledelayedexpansion set /p "filename=type file name>" rem initialise counter to 1 set _count=1 for /r E:\ %%a in (*) do if "%%~nxa"=="%filename%" ( echo %%~dpnxa >>path!_count!.txt rem increment the counter set /a _count+=1 ) endlocal
Anmerkungen:
- Ich habe die
setlocal
Zeile verschoben, um zu verhindern, dass die Variablefilename
in die aufrufendecmd
Shell eindringt.
Lesen Sie weiter
- Ein AZ-Index der Windows CMD-Befehlszeile
- Eine kategorisierte Liste von Windows CMD-Befehlen
- enabledelayedexpansion - Eine verzögerte Erweiterung bewirkt, dass Variablen nicht zur Analysezeit, sondern zur Ausführungszeit erweitert werden.
- endlocal - Beendet die Lokalisierung von Umgebungsänderungen in einer Batchdatei. Übergeben Sie Variablen von einer Batchdatei an eine andere.
- for / r - Durchlaufen Dateien (Recurse-Unterordner).
- set - CMD-Umgebungsvariablen anzeigen, festlegen oder entfernen. Mit SET vorgenommene Änderungen bleiben nur für die Dauer der aktuellen CMD-Sitzung erhalten.
- setlocal - Legen Sie Optionen fest, um die Sichtbarkeit von Umgebungsvariablen in einer Batchdatei zu steuern.