[Batch] Ayuda: Añadir linea a batch

Iniciado por Grasky, 1 Octubre 2012, 22:53 PM

0 Miembros y 1 Visitante están viendo este tema.

Grasky

Hola buenas soy nuevo aqui, pero he leido muchos temas sobre batch ya que me atrae.

Bien lo que me gustaria hacer es con un bat añadir una linea tipo:
if %var1%== etc. etc
al mismo bat pero bajo otra linea especifica del bat.

No se si me explico bien, si no se entiende puedo poner el codigo que he hecho, pero soy muy novato con esto. Espero que me podais ayudar.  :D

Eleкtro

#1
Código (dos) [Seleccionar]
@Echo OFF

:: By Elektro H@cker

SET "FILE=Test.txt"
Set "COMMAND=IF "%%VAR%%" EQU "SOMETHING" (THIS^) ELSE (THAT^)"
Set /A "INSERT__IN_LINE=3"

For /F "Useback Tokens=*" %%# in ("%FILE%") DO (
Call Set /A "Line+=1"
CMD /C "IF "%%LINE%%" EQU "%INSERT__IN_LINE%" (Echo %COMMAND%>>"%FILE%.new.txt")"
Echo %%#>>"%FILE%.new.txt"
)

Pause&Exit



Output:

test.txt.new.txt
comando1
comando2
IF "%VAR%" EQU "SOMETHING" (THIS) ELSE (THAT)
comando3
comando4
comando5


saludos








Grasky

@EleKtro H@cker
Vaya eso es complicado, no se muy bien como usarlo. También quiero saber que si añado mas lineas, estas se van a ir acumulando debajo de las otras. Gracias y investigaré el codigo para intentar entenderlo.

Eleкtro

Cita de: Axelcraw en  2 Octubre 2012, 00:08 AMTambién quiero saber que si añado mas lineas, estas se van a ir acumulando debajo de las otras.

¿Debajo de la última línea añadida usando por ejemplo el código que te puse arriba?, ¿O añadir lineas al final del texto, abajo abajo del todo?

Lo primero es más complicado pero se puede hacer, con un FOR y guardando en una variable cual fue la última linea utilizada (por el script que puse arriba por ejemplo).
Lo segundo es muy fácil, Si solo quieres añadir lineas abajo del todo, al final del archivo, lo que tienes que hacer es redireccionar así:

Código (dos) [Seleccionar]
Echo primera linea > "Archivo.txt"
Echo linea que va debajo >> "Archivo.txt"
Echo Otra linea que va debajo >> "Archivo.txt"


Y puedes mirar esto: [BATCH] [APORTE] Rutina TEXTMAN para manipular archivos de texto

saludos








Grasky

Gracias, al final lo que he hecho es que se añada el texto a otro .bat y entonces cuando lo necesite hago un call al bat con el texto añadido. Gracias igualmente.
No se si tengo que decir que ya se puede cerrar el post o que tengo que hacer.