Batch ayuda sobre como dar la bienvenida con el nombre

Iniciado por ELVJop, 9 Abril 2012, 20:18 PM

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

ELVJop

Buenos dias. Quiero crear un script que (no lo tengo claro) empezaria así:

@echo off
if exist Nombre.txt goto :programa
goto :nombre

:nombre
del Nombre.txt
cls
echo Como te llamas?
echo.
set /p nombre2=Tu nombre:
echo Bienbenido %nombre2% > Nombre.txt
goto :programa

:programa
for /f "tokens=*" %%x in (Nombre.txt) do (echo %%x)
cls
echo.
pause
exit


(me base en una guia sobre acciones en un archivo de texto de este foro) Pensaba que funcionaria pero no encuentro el error. Se genera el .txt con bienbenido xxxx (nombre) y despues lo enciendo y nada no ba.
El dia 3 de mayo esta cuenta sera borrada.

electrodev

Bueno pues puede ser:

@echo off
if exist Nombre.txt goto :programa
goto :nombre

:nombre
del Nombre.txt
cls
echo Como te llamas?
echo.
set /p nombre2=Tu nombre:
echo Bienbenido %nombre2% > Nombre.txt
goto :programa

:programa
cls
echo Bienvenido Usuario: & for /f "tokens=*" %%x in (Nombre.txt) do (echo %%x)
echo.
pause
exit


Por,Favor si funciona asmelo saber pliss
Saludos: ELVJop

ELVJop

#2
No pero gracias a ti encontre la forma de hacerlo dego el code:

@echo off
if exist Nombre.txt goto :programa
goto :nombre

:nombre
del Nombre.txt
cls
echo Como te llamas?
echo.
set /p nombre2=Tu nombre:
echo Bienbenido %nombre2% > Nombre.txt
goto :programa

:programa
cls
echo. & for /f "tokens=*" %%x in (Nombre.txt) do (echo %%x)
echo.
pause
exit

Añadiste algo de Nombre de usuario: Que no me gustaba y lo borre despues de borrarlo me daba error si no ponia echo. Y si no ponia echo se me cerraba la ventana. Pero entre comillas funcionaba solo que salia asi:

Bienbenido Usuario:
Bienbenido XXXXX
Ahora sale asi:

(Linea en blanco No lo pude evitar)
Bienbenido XXXXX


Edito: Si alguien lee el code y mira donde pone del Nombre.txt Es porque en el programa real agregare una funcion que sea cambiar nombre que reedirecione otra vez alli borre el Nombre.txt y lo vuelva a crear
El dia 3 de mayo esta cuenta sera borrada.

Eleкtro

Otra forma de hacerlo:

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

For /F "Tokens=2 Delims=:" %%# in ('Type %0 ^| Find "SAVENAME" ^| Find /V "%%0"') do (IF NOT "%%" EQU "" (Echo: Bienvenido %%# | MORE && Goto :Programa))

:Nombre
Echo: Como te llamas? | MORE
Set /P NOMBRE=Tu nombre:
Cls & Echo: Bienbenido %nombre%
Echo+ >> %0 & Echo SAVENAME:%nombre% >> %0

:Programa
Echo: El programa...
Pause
Exit


Saludoss