Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: mansapeluca en 25 Septiembre 2012, 02:12 AM

Título: Batch
Publicado por: mansapeluca en 25 Septiembre 2012, 02:12 AM
Hola tenia una preguna sobre batch, como puedo eliminar la 3 linea de un archivo con batch.
Título: Re: Batch
Publicado por: Eleкtro en 27 Septiembre 2012, 00:59 AM
Hola,

No puedes eliminar una linea directamente en puro Batch, tienes que crear un nuevo archivo sin esa linea.

Código (dos) [Seleccionar]
@Echo OFF
:: By Elektro H@cker

REM Call :CUTTER "Numero de linea a borrar" "archivo"
CALL :CUTTER 3 "test.txt"
Pause&Exit

:CUTTER
setlocal enabledelayedexpansion
(For /F "usebackq tokens=*" %%@ in ("%~2") DO (Set /A "LINE+=1" & IF NOT "!LINE!" EQU "%~1" (Echo %%@>>"%~n2_Nuevo%~x2"))) & (GOTO:EOF)


PD: Quizás con EDLIN si se puede pero solo está en Windows XP.

EDITO:
mejorado
Código (dos) [Seleccionar]
@Echo OFF
:: By Elektro H@cker

REM Call :CUTTER "Numero de linea a borrar" "archivo"
CALL :CUTTER 3 "1.txt"
Pause&Exit

:CUTTER
(For /F "usebackq tokens=*" %%@ in ("%~2") DO (Call Set /A "LINE+=1" & (CMD /C "IF not "%%LINE%%" EQU "%~1" (Echo %%@>>"%~n2_Nuevo%~x2")"))) & (GOTO:EOF)

Saludos
Título: Batch
Publicado por: Eleкtro en 27 Septiembre 2012, 01:10 AM
El mensaje 'Batch (http://foro.elhacker.net/index.php?topic=371934)' fue bloqueado
Debes usar títulos descriptivos en tus preguntas.
Leer reglas:
http://foro.elhacker.net/reglas