Agregar dato entre 2 delimitadores (tab) con batch

Tengo la necesidad de modificar un archivo txt con un .bat, donde tengo aproximadamente 30 columnas, las cuales están delimitadas por tab.
Requiero actualizar las columnas donde no tengo información, ya que se juntan 2 tabs:
tab -> tab ->
Para éste escenario, debe quedar de la siguiente forma por ejemplo:
Tab -> Columna Sin Información tab ->

1 Respuesta

Respuesta
1

A ver si esto te sirve:

@echo off
Setlocal EnableDelayedExpansion
del /q kkk.txt
for /f "tokens=* delims=" %%i in (ivan.txt) do (set ANT=%%i&echo !ANT:        =    Columna sin informaci¢n    ! >> kkk.txt)

Tienes que asegurarte que el editor que uses (y tal vez el de la página, lo sabré cuando le dé a enviar) no transforme los tabuladores en otra cosa (como espacios, por ejemplo). Entre el ANT y el "=" tiene que haber dos tabuladores seguidos, entre el "=" y  "Columna" debe haber un tabulador y entre "informaci¢n" y "!" otro tabulador.

Este bat tiene el inconveniente de cargarse las líneas en blanco. Si eso supone un problema dímelo e intentaré otro más complicado para ver si consigo "salvarlas"

Me parece que el editor de la página se ha cargado los tabuladores, como me temía, así que tendrás que ponerlos a mano (por ejemplo con el Bloc de notas) antes de ejecutarlo.

Perdón, quería decir entre el ANT: y el "=" no entre el ANT y el "="

Muchas gracias, si funciona.

Pero una pregunta, se puede hacer que en vez de que el elimine el archivo original, solo lo actualice??

Gracias de antemano.

Precisamente al salir de casa, hace un rato, caí en la cuenta de que no te había avisado que tal como estaba el BAT se respetaba el archivo original (al que había llamado ivan.txt, cosa que también se me olvidó advertirte) y que el archivo corregido se dejaba en kkk.txt, de modo que no sé como lo habrás hecho

Lo modifiqué agregando las líneas:

copy /y kkk.txt Ivan.txt
Del /q kkk.txt

En verdad muchas gracias por tu tiempo.

Vale. Entiendo que está resuelto tu problema. Si es así no digas nada porque si dices algo me figurará la pregunta como pendiente de respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas