09. september 2008 - 17:16
Der er
5 kommentarer og 1 løsning
Bat fil til skiftevis at slette hveranden og hver tredje linje
Jeg har fundet følgende stump kode her på eksperten som sletter hver anden linje i en txt fil: @echo off del /Q Output.txt>nul 2>&1 set first=1 for /F "tokens=*" %%I in ('type myFile.txt') do call :Process "%%I" goto :eof :Process if %first% EQU 1 ( echo %~1 >>Output.txt set first=0 ) else ( set first=1 ) Jeg vil have denne modificeret så den skiftevis sletter hveranden og hver tredje linje Hvordan kan man klare dette?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
09. september 2008 - 18:08
#1
proev: @echo off del /Q Output.txt>nul 2>&1 set first=0 for /F "tokens=*" %%I in ('type myFile.txt') do call :Process "%%I" goto :eof :Process if %first% EQU 0 ( echo %~1 >>Output.txt set first=1 ) else if %first% EQU 1 ( set first=2 ) else ( set first=0 )
09. september 2008 - 18:09
#2
Men helt aerligt - hvorfor ikke gaa fra 80'erne og ind i 90'erne ? D.v.s. bruge VBS fremfor CMD !
09. september 2008 - 19:34
#3
Hej Arne Meget gerne VBS. Kunne bare kun finde en stump kode i CMD Desværre virker koden ikke helt som forventet følgende test tekst: 1 2 3 4 5 6 1 2 3 4 5 6 Bliver til: 1 4 1 4
09. september 2008 - 21:29
#4
Rettede lige lidt så var den der :-) Takker for hjælpen alligevel.. smid gerne svar.. @echo off del /Q Output.txt>nul 2>&1 set first=0 for /F "tokens=*" %%I in ('type myFile.txt') do call :Process "%%I" goto :eof :Process if %first% EQU 0 ( echo %~1 >>Output.txt set first=1 ) else if %first% EQU 1 ( set first=2 ) else if %first% EQU 2 ( echo %~1 >>Output.txt set first=3 ) else if %first% EQU 3 ( echo %~1 >>Output.txt set first=4 ) else ( set first=0 )
10. september 2008 - 20:15
#5
svar
11. september 2008 - 12:46
#6
Der var vist ingen interesse efter den VBS loesning ...
Kurser inden for grundlæggende programmering