Saludos, ¿Cómo reemplazo con un archivo .bat a un archivo .txt que tiene delimitado por tabuladores con pipe "|"?

Requiero cambiar el caracter de delimitador de un archivo txt que esta con tabuladores para que sean con pipe "|" mediante un archivo .bat

1 Respuesta

Respuesta

Prueba con esto:

@echo off
Setlocal EnableDelayedExpansion
del /q tmp.txt
for /f "tokens=* delims=" %%i in (%~1) do (
set ANT=%%i
echo !ANT:ttttt=^|! >>tmp.txt
)
rem copy /y tmp.txt %1

Donde pongo "ttttt" en realidad debes poner el tabulador con un programa que lo salve como tabulador al guardar el BAT (por ejemplo, el Bloc de notas). El procesador de texto de la página no me respeta el carácter tabulador (Ascii 9). Al BAT que crees con esto le pasarás el nombre del archivo en cuestión, entre comillado si tiene espacios en el nombre. Con objeto de que puedas hacer pruebas

"no destructivas" se guarda lo cambiado en un archivo temporal tmp.txt. Si el resultado se ajusta a tus necesidades puedes descomentar la última línea.

Esta forma de trabajar elimina las líneas en blanco que hubiera en el archivo (a no ser que sean líneas en blanco con blancos, es decir que no sean solo cambios de línea y tengan al menos un espacio). Es un problema del FOR.

Ya me contarás si te funciona y mientras tanto un saludo, GGG

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas