Me gustaria modificarlo para poder hacer que se guarde en tiempo real en el archivo.
Código:
De esta forma se guarda todo en una linea pero hay que depender de que el usuario le de a Ctrl+C y a S. @echo off setlocal for /F "delims=" %%i in ('ping 127.0.0.1 -t') do call :format "%%i" goto :done :format echo %date% %time% %1 1>> output.txt :done
Tengo otro codigo en el que se va guardando en tiempo real, asi aunque se apague el equipo o se cierre directamente la ventana el archivo tiene todo el registro.
Ademas hago que cada dia cree un archivo nuevo con la fecha y hora, ya que hay que dejarlo todo el dia corriendo.
Código:
Lo que no consigo es que me meta cada ping con su hora en una linea. He mirado la documentacion del for, pero lo empleado en el primer ejemplo, que si que guarda cada ping en una linea, tiene bastantes cosas mas que no entiendo. ¿Hay forma de combinar los dos ejemplos de algun modo para meta cada linea en tiempo real? rem @echo off 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 set Any=%Date:~8% 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 set Respuesta=ping 192.168.1.4 echo %Any%-%Mes%-%Dia%__%Hor%-%Min%-%Seg% >>%nombre%.txt ping 192.168.1.4 -n 1 >>%nombre%.txt REM tiempo que queremos que pase entre ping y ping en segundos timeout 2 > NUL GOTO LOOPSTART