en batch basta con crearlas antes de usarlas
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúset dias=365
set /p aniosusuario=Cuantos años has cumplido hoy?
@echo off
:inicio
cls
set /p aniosusuario=Cuantos años has cumplido hoy?
set dias=365
set /a resultado=%aniosusuario% * %dias%
echo tienes %resultado% dias
pause
goto inicio
@echo off
REM Ponemos REM para crear un comentario, no tiene incidencia en el programa, es solo para guia del programador
REM Ponemos una etiqueta llamada inicio para que cuando acabe el programa con goto vuelva a inicio y comience de nuevo
:inicio
REM con cls borramos la pantalla cada vez
cls
REM Preguntamos al usuario cuantos años tiene y lo guardamos en la variable años que creamos con set
set /p aniosusuario=Cuantos años has cumplido hoy?
REM creamos la variable dias y le asignamos el valor
set dias=365
REM para operar con las variables creadas ponemos % al principio y al final de la variable
set /a resultado=%aniosusuario% * %dias%
REM aqui mostramos el resultado intercalando el texto con la variable poniendo tambien %
echo tienes %resultado% dias
REM paramos el programa para que el usuario pueda ver el resultado hasta que pulse una tecla
pause
REM volvemos al punto de partida que está en la etiqueta inicio
goto inicio
En la previsualizacion, porque la escribir años aparece asi: a& # 241;os y al escribir a n i o s aparece asi: años?
Bueno se descompone todo al guardar y luego al previsualizar se vuelve a descomponer asi que no se si se me entendera
@echo off
echo.
echo El test de conexion a 192.168.1.10 cada 4 segundos ha comenzado
echo.
echo ------------- NO CERRAR ESTA VENTANA -------------
REM Creamos el archivo cada vez que se ejecuta el programa con la fecha y hora en el nombre y la primera linea
set hour=%time:~0,2%
if "%hour:~0,1%" == " " set hour=0%hour:~1,1%
rem echo hour=%hour%
set min=%time:~3,2%
if "%min:~0,1%" == " " set min=0%min:~1,1%
rem echo min=%min%
set secs=%time:~6,2%
if "%secs:~0,1%" == " " set secs=0%secs:~1,1%
rem echo secs=%secs%
set fecha=%Date:~-4%-%Date:~3,2%-%Date:~0,2%
rem set hora=%Time:~0,2%-%Time:~3,2%-%Time:~6,2%
set hora=%hour%-%min%-%secs%
REM Para concatenar y que no de problemas metemos variables y asignacion entre comillas
set nombre=%fecha%_%hora%
echo %nombre%
REM Añadimos el nombre del archivo al archivo que creamos tras >
echo %nombre% > %nombre%.txt
REM Hacemos ping y lo anadimos poniendo la fecha delante linea a linea
:LOOPSTART
(
FOR /L %%i in (1,1,1) do (
<nul (set /p tm=%date% %time:~,-3% )
rem PING -n 1 192.168.1.10 | FIND "TTL"
PING -n 1 google.com | FIND "TTL"
IF ERRORLEVEL 1 ECHO Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
)
) >>%nombre%.txt
REM tiempo que queremos que pase entre ping y ping en segundos
timeout 4 > NUL
GOTO LOOPSTART
pause
echo.
echo El test de conexion a 192.168.1.10 cada 4 segundos ha comenzado
echo.
echo ------------- NO CERRAR ESTA VENTANA -------------
REM Creamos el archivo cada vez que se ejecuta el programa con la fecha y hora en el nombre y la primera linea
set fecha=%Date:~-4%-%Date:~3,2%-%Date:~0,2%
set hora=%Time:~0,2%-%Time:~3,2%-%Time:~6,2%
REM Para concatenar y que no de problemas metemos variables y asignacion entre comillas
set nombre="%fecha%_%hora%"
echo %nombre%
REM Anadimos el nombre del archivo al archivo que creamos tras >
echo %nombre% > %nombre%.txt
REM Hacemos ping y lo anadimos poniendo la fecha delante linea a linea
:LOOPSTART
(
FOR /L %%i in (1,1,1) do (
<nul (set /p tm=%date% %time:~,-3% )
PING -n 1 192.168.1.10 | FIND "TTL"
IF ERRORLEVEL 1 ECHO Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
)
) >> %nombre%.txt
REM tiempo que queremos que pase entre ping y ping en segundos
timeout 4 > NUL
GOTO LOOPSTART
pause
set "nombre=%fecha%_%hora%"
2019-04-01__10-21-53
C:\asisrem\pinglog>(
(set /p tm=01/04/2019 10:21:53 ) 0<nul
PING -n 1 asisrem.com | FIND "TTL"
IF ERRORLEVEL 1 ECHO Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
)
01/04/2019 10:21:53 Respuesta desde 31.47.74.215: bytes=32 tiempo=14ms TTL=52
@echo off
REM Si queremos retrasar el incio del test habilitamos la linea del timeout
REM timeout 240 > NUL
echo.
echo El test de conexion a 192.168.1.10 cada 4 segundos ha comenzado
echo.
REM Creamos el archivo cada vez que se ejecuta el programa con la fecha y hora en el nombre y la primera linea
REM Al poner muchas variables seguidas asignadas a otra variable parece que daba fallo
REM set Any=%Date:~-4%
REM set Mes=%Date:~3,2%
REM set Dia=%Date:~0,2%
REM set Hor=%Time:~0,2%
REM set Min=%Time:~3,2%
REM set Seg=%Time:~6,2%
REM set nombre=%Any%-%Mes%-%Dia%__%Hor%-%Min%-%Seg%
REM Preparamos el nombre del archivo con solo 3 variables para que no de fallo
set fecha=%Date:~-4%-%Date:~3,2%-%Date:~0,2%
set Separador=__
set hora=%Time:~0,2%-%Time:~3,2%-%Time:~6,2%
set nombre=%fecha%%Separador%%hora%
echo %nombre% > %nombre%.txt
REM Hacemos ping y lo anadimos poniendo la fecha delante linea a linea
:LOOPSTART
(
FOR /L %%i in (1,1,1) do (
<nul (set /p tm=%date% %time:~,-3% )
PING -n 1 192.168.1.10 | FIND "TTL"
IF ERRORLEVEL 1 ECHO Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
)
) >> %nombre%.txt
REM tiempo que queremos que pase entre ping y ping en segundos
timeout 4 > NUL
GOTO LOOPSTART
pause
@echo off
REM Curiosamente si meto el formato de fecha y hora como en la siguiente linea, luego no se repite el loop
rem set datetimef=%date:~-4%_%date:~3,2%_%date:~0,2%__%time:~0,2%_%time:~3,2%_%time:~6,2%
REM damos formato a la fecha y la hora y lo guardamos en cada variable
set Any=%Date:~-4%
set Mes=%Date:~3,2%
set Dia=%Date:~0,2%
set Hor=%Time:~0,2%
set Min=%Time:~3,2%
set Seg=%Time:~6,2%
REM Creamos el archivo cada vez que se ejecuta el programa con la fecha y hora en el nombre y la primera linea
set nombre=%Any%-%Mes%-%Dia%__%Hor%-%Min%-%Seg%
echo %nombre% >%nombre%.txt
REM Hacemos ping y lo añadimos poniendo la fecha delante linea a linea
:LOOPSTART
(
FOR /L %%i in (1,1,1) do (
<nul (set /p tm=%date% %time:~,-3% )
PING -n 1 8.8.8.8 | FIND "TTL"
IF ERRORLEVEL 1 ECHO Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
)
) >> %nombre%.txt
REM tiempo que queremos que pase entre ping y ping en segundos
timeout 1 > NUL
GOTO LOOPSTART
pause
25/01/2019 10:50:26 Respuesta desde 8.8.8.8: bytes=32 tiempo=16ms TTL=119
25/01/2019 10:50:28 Respuesta desde 8.8.8.8: bytes=32 tiempo=14ms TTL=119
25/01/2019 10:50:30 Respuesta desde 8.8.8.8: bytes=32 tiempo=14ms TTL=119
25/01/2019 10:50:32 Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
25/01/2019 10:50:41 Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
25/01/2019 10:50:43 Error, Tiempo de espera agotado. No se ha podido conectar con la IP.
25/01/2019 10:50:45 Respuesta desde 8.8.8.8: bytes=32 tiempo=14ms TTL=119
25/01/2019 10:50:47 Respuesta desde 8.8.8.8: bytes=32 tiempo=14ms TTL=119
25/01/2019 10:50:49 Respuesta desde 8.8.8.8: bytes=32 tiempo=17ms TTL=119
25/01/2019 10:50:51 Respuesta desde 8.8.8.8: bytes=32 tiempo=14ms TTL=119