En el símbolo del sistema de Windows cmd
, usoping -t to 10.21.11.81
Reply from 10.21.11.81: bytes=32 time=3889ms TTL=238
Reply from 10.21.11.81: bytes=32 time=3738ms TTL=238
Reply from 10.21.11.81: bytes=32 time=3379ms TTL=238
¿Hay alguna posibilidad de obtener un resultado como este?
10:13:29.421875 Reply from 10.21.11.81: bytes=32 time=3889ms TTL=238
10:13:29.468750 Reply from 10.21.11.81: bytes=32 time=3738ms TTL=238
10:13:29.468751 Reply from 10.21.11.81: bytes=32 time=3379ms TTL=238
Tenga en cuenta que quiero lograr esto solo con los comandos proporcionados por CMD
Respuestas:
@echo off ping -t localhost|find /v ""|cmd /q /v:on /c "for /l %%a in (0) do (set "data="&set /p "data="&if defined data echo(!time! !data!)"
nota : código que se utilizará dentro de un archivo por lotes. Para usar desde la línea de comando, reemplace
%%a
con%a
Inicie el ping, fuerce una salida de búfer de línea correcta (
find /v
) e inicie uncmd
proceso con la expansión retardada habilitada que hará un bucle infinito leyendo los datos canalizados que se repetirán en la consola con el prefijo de la hora actual.2015-01-08 editado : En las versiones más rápidas / nuevas de máquinas / sistemas operativos hay un problema de sincronización en el código anterior, lo que hace que la
set /p
lectura sea una línea mientras elping
comando aún la está escribiendo y el resultado son cortes de línea.@echo off ping -t localhost|cmd /q /v /c "(pause&pause)>nul & for /l %%a in () do (set /p "data=" && echo(!time! !data!)&ping -n 2 localhost>nul"
Se
pause
incluyen dos comandos adicionales al comienzo de la subcapa (solo se puede usar uno, pero comopause
consume un carácter de entrada, se rompe un par CRLF y se lee una línea con un LF) para esperar los datos de entrada, yping -n 2 localhost
se incluye un para espere un segundo por cada lectura en el bucle interno. El resultado es un comportamiento más estable y menos uso de CPU.NOTA: El interior
ping
se puede reemplazar con apause
, pero luego el primer carácter de cada línea leída es consumido por elpause
y no recuperado por elset /p
fuente
echo
comando aecho(!date! !time! !data!
ping.bat
oping.cmd
?WindowsPowershell:
Opción 1
opcion 2
fuente
Test-Connection -Count 9999 | Format-Table @{Name='TimeStamp';Expression={Get-Date}},Address,ProtocolAddress,ResponseTime
> C:\temp\ping.txt
redirige la salida a un archivo. Si también desea ver la salida en vivo, simplemente ejecuteGet-Content C:\temp\ping.txt -tail 10 -wait
en otro PowerShell.Puede hacer esto en Bash (por ejemplo, Linux o WSL):
Aunque no proporciona las estadísticas que normalmente obtiene cuando pulsa ^ C al final.
fuente
date +%s
es más útil ya que muestra marcas de tiempo enteras.Secuencia de comandos por lotes:
Este script preguntará por qué host hacer ping. La salida de ping se envía a la pantalla y al archivo de registro. Salida de archivo de registro de ejemplo:
El archivo de registro se denomina LOG_ [nombre de host] .log y se escribe en la misma carpeta que el script.
fuente
Esto podría ayudar a alguien: [Debe ejecutarse en Windows PowerShell]
- Busque el archivo Ping_IP.txt en el directorio actual o en la ruta de inicio del usuario.
El comando anterior le brinda la salida en un archivo como el siguiente;
fuente
En Windows
Puede utilizar una de las otras respuestas.
En Unix / Linux
O como función
pingt
para su ~ / .bashrc:fuente: https://stackoverflow.com/a/26666549/1069083
fuente
-w
es una opción no válida paraping
.Creo que mi código es lo que todos necesitan:
para mostrar:
nota : código que se utilizará dentro de una línea de comando, y debe tener PowerShell preinstalado en el sistema operativo.
fuente
Esto podría ajustarse a la factura de las versiones posteriores de Windows:
fuente
Prueba esto:
Cree un archivo por lotes con lo siguiente:
Puede agregar sus propias opciones al comando ping según sus requisitos. Esto no coloca la marca de tiempo en la misma línea que el ping, pero aún le brinda la información que necesita.
Una forma aún mejor es usar fping, vaya aquí http://www.kwakkelflap.com/fping.html para descargarlo.
fuente
Utilizar
Desde la página del manual
Salida
fuente
Otro método de PowerShell (solo quería fallas)
fuente
También necesito esto para monitorear el problema de red para mi problema de tiempo de espera de duplicación de base de datos. Utilizo el código de comando de la siguiente manera:
Solo necesita modificar Google.com a su nombre de servidor. Funciona perfectamente para mí. y recuerde detener esto cuando termine. El archivo pingtest.txt aumentará en 4,5 KB por minuto (aproximadamente).
Gracias por raymond.cc. https://www.raymond.cc/blog/timestamp-ping-with-hrping/
fuente
Una mejora de la respuesta de MC ND para Windows.
Necesitaba un script para ejecutar en WinPE, así que hice lo siguiente:
Esto se puede codificar en una dirección IP en particular (
192.168.1.1
en mi ejemplo) o tomar un parámetro pasado. Y como en la respuesta de MC ND, repite el ping aproximadamente cada 1 segundo.fuente
Simple 😎:
fuente
En lugar de tener el adicional
ping -n 2 localhost
al final del ciclo, puede simplemente agregar el carácter R antes,!data!
ya que las únicas posibilidades son Responder o Solicitar. El primer carácter se consume delpause>nul
. Entonces, en lugar de tener la siguiente expresión:Puedes usar esta expresión:
Que produce la misma salida, por ejemplo:
fuente
Prueba esto en su lugar:
Comprueba si te conviene
fuente