Avatar billede kenneth_breve Nybegynder
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?
Avatar billede arne_v Ekspert
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
)
Avatar billede arne_v Ekspert
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 !
Avatar billede kenneth_breve Nybegynder
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
Avatar billede kenneth_breve Nybegynder
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
)
Avatar billede kenneth_breve Nybegynder
10. september 2008 - 20:15 #5
svar
Avatar billede arne_v Ekspert
11. september 2008 - 12:46 #6
Der var vist ingen interesse efter den VBS loesning ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Udviklings- og Forenklingsstyrelsen

Generalister til PMO og strategiimplementering

Cognizant Technology Solutions Denmark ApS

Senior Delivery Manager

Udviklings- og Forenklingsstyrelsen

IT-generalister til rollen som systemejer