Einzelne Zeile eines TXT Files mittels Batch kopieren und in separate TXT Files nummerisch speichern
Hallo,
ich hoffe der Title verwirrt nicht all zu sehr.
Also, ich habe eine Textdatei bestehen aus 100 Zeilen.
Ich möchte all diesen Zeilen in separaten Textdateien nummerisch speichern.
Original File:
Ich möchte sie so haben:
Z.B für PC_Berta: Computer von 01.txt
Z.B für PC_Thomas: Computer von 02.txt
...usw
Ich habe das probiert:
Es ergibt separate Textdateien mit den entsprechenden Zeilen, nur das Problem, ich weiß nicht wie und wo könnte ich den "Zähler" einbauen?
Ich habe eine Variable "count" mit 0 initialisiert direkt nach den echo (Zeile 01), und sie dann inkrementiert in der Schleife(Zeile 03). Die Zeile 04 sah aber so aus
echo %%i>>Computer von%count%.txt
Irgendwie findet das Inkrementieren gar nicht statt, und das Ergebnis war nur eine Textdatei, die zeilenweise erfüllt wird mit dem Inhalt der Originaldatei.
Hat jemand eine Idee wie man das besser handhaben könnte?
Vielen Dank
Thomas
ich hoffe der Title verwirrt nicht all zu sehr.
Also, ich habe eine Textdatei bestehen aus 100 Zeilen.
Ich möchte all diesen Zeilen in separaten Textdateien nummerisch speichern.
Original File:
PC_Berta
PC_Thomas
PC_Richard
PC_Wilfrid
PC_Otto
PC_Simon
PC_Christoph
PC_Ingrid
PC_Thorsten
PC_Hans
PC_Josef
PC_Manfred
...
Ich möchte sie so haben:
Z.B für PC_Berta: Computer von 01.txt
Z.B für PC_Thomas: Computer von 02.txt
...usw
Ich habe das probiert:
00 @echo off
01
02 for /F %%i in (test.txt) do (
03
04 echo %%i>>Computer von%%i.txt
05
06 pause
)
Es ergibt separate Textdateien mit den entsprechenden Zeilen, nur das Problem, ich weiß nicht wie und wo könnte ich den "Zähler" einbauen?
Ich habe eine Variable "count" mit 0 initialisiert direkt nach den echo (Zeile 01), und sie dann inkrementiert in der Schleife(Zeile 03). Die Zeile 04 sah aber so aus
echo %%i>>Computer von%count%.txt
Irgendwie findet das Inkrementieren gar nicht statt, und das Ergebnis war nur eine Textdatei, die zeilenweise erfüllt wird mit dem Inhalt der Originaldatei.
Hat jemand eine Idee wie man das besser handhaben könnte?
Vielen Dank
Thomas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 314525
Url: https://administrator.de/contentid/314525
Ausgedruckt am: 06.11.2024 um 01:11 Uhr
11 Kommentare
Neuester Kommentar
@echo off & setlocal enabledelayedexpansion
REM list every line with the line-number prefixed and separated by colon
for /f "tokens=1* delims=:" %%a in ('findstr /n "^" "C:\test.txt"') do (
REM add leading zeros
set "counter=00%%a"
REM select always 3 digits
set "counter=!counter:~-3!"
REM echo out content to file with counter
echo %%b>"Computer von !counter!.txt"
)
Hallo Thomas
Ungetestet:
Grüße
rubberman
Ungetestet:
@echo off & setlocal enabledelayedexpansion
set "initial=30"
REM list every line with the line-number prefixed and separated by colon
for /f "tokens=1* delims=:" %%a in ('findstr /n "^" "C:\test.txt"') do (
REM calculate new number and add leading zeros
for /f %%c in ('set /a initial + %%a') do set "counter=00%%c"
REM select always 3 digits
set "counter=!counter:~-3!"
REM echo out content to file with counter
echo %%b>"Computer von !counter!.txt"
)
rubberman