¿Cómo puedo dejar una entrada de texto en un archivo .BAT?

Creo que la pregunta no se explica bien, pero intentaré explicarla

Ayer me ayudó con la programación de este archivo .BAT

@echo off
Setlocal EnableDelayedExpansion
set archivo=%1
set carpeta=C:\datos
pushd %carpeta%
del /q generado.txt>nul 2>&1
for /f "usebackq delims=" %%x in ("%archivo%") do (
set linea=%%x
set linea=!linea:I=1!
Set linea=!linea:O=2!
Echo ! Linea!>>generado.txt
)
Popd
Pause>nul

Yo modifiqué un poco el que me dió para poder usarlo desde el cmd así:

Automod prueba.txt

pero me piden que sea un ejecutable donde se ingrese el nombre del archivo con una interfaz parecida a esta

Modificador de marcaciones
Ingrese el nombre de su archivo
(Aquí se ingresa el nombre del archivo)

cualquier ayuda será muy bien recibida.

1 Respuesta

Respuesta
1

Si te he entendido bien, lo que quieres es que el nombre del archivo se tome desde la consola. Mira a ver si esto te vale:

@echo off
Setlocal EnableDelayedExpansion
Cls
Echo -------------------------------------------
Echo - Modificador de marcaciones -
Echo -------------------------------------------
set /p archivo=Ingrese el nombre de su archivo:
set carpeta=C:\datos
pushd %carpeta%
del /q generado.txt>nul 2>&1
for /f "usebackq delims=" %%x in ("%archivo%") do (
   set linea=%%x
   set linea=!linea:I=1!
   set linea=!linea:O=2!
   Echo ! Linea!>>generado.txt
   )
Popd
Echo Modificaci¢n finalizada
Pause>nul

Me he tomado la libertad de añadir algunos "adornos"

Ya habrás comprobado que el editor de la página hace los cambios que te comenté al tratar tu otra consulta. No olvides, sobre todo, eliminar el espacio entre "!" y "Linea" (que debería ser "linea" aunque eso no afecta a la ejecución).

Acabo de ver que también deja en un solo espacio las situaciones en que había más de uno, con lo que ha desbaratado un poco mis "adornos". Se supone que debía salir así:

¡Muchísimas gracias!

Ya me funcionó, muchísimas gracias enserio, viendo esto pude dejar también un espacio para que el usuario escriba la carpeta desde la que quiere sacar el archivo y el nuevo nombre del archivo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas