An der Windows-Eingabeaufforderung verwende cmd
ichping -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
Gibt es Möglichkeiten, eine solche Ausgabe zu erhalten?
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
Bitte beachten Sie, dass ich dies nur mit Befehlen erreichen möchte, die von CMD bereitgestellt werden
Antworten:
@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!)"
Hinweis : Code, der in einer Batchdatei verwendet werden soll. Zur Verwendung über die Befehlszeile ersetzen
%%a
durch%a
Starten Sie den Ping, erzwingen Sie eine korrekte zeilengepufferte Ausgabe (
find /v
) und starten Sie einencmd
Prozess mit aktivierter verzögerter Erweiterung, der eine Endlosschleife durchführt, in der die weitergeleiteten Daten gelesen werden, die an die Konsole mit dem Präfix der aktuellen Zeit zurückgesendet werden.08.01.2015 bearbeitet : In schnelleren / neueren Maschinen / Betriebssystemversionen gibt es im vorherigen Code ein Synchronisationsproblem, bei dem das
set /p
Lesen einer Zeile erfolgt, während derping
Befehl sie noch schreibt, und das Ergebnis sind Zeilenausschnitte.@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"
Zu
pause
Beginn der Unterschale sind zwei zusätzliche Befehle enthalten (nur einer kann verwendet werden, aber wennpause
ein Eingabezeichen verbraucht wird, wird ein CRLF-Paar unterbrochen und eine Zeile mit einem LF wird gelesen), um auf Eingabedaten zu warten, und aping -n 2 localhost
ist enthalten Warten Sie eine Sekunde für jeden Lesevorgang in der inneren Schleife. Das Ergebnis ist ein stabileres Verhalten und eine geringere CPU-Auslastung.HINWEIS: Das Innere
ping
kann durch ein ersetzt werdenpause
, aber dann wird das erste Zeichen jeder gelesenen Zeile vompause
und verbraucht und nicht vomset /p
quelle
echo
Befehl inecho(!date! !time! !data!
ping.bat
oderping.cmd
?WindowsPowershell:
Option 1
Option 2
quelle
Test-Connection -Count 9999 | Format-Table @{Name='TimeStamp';Expression={Get-Date}},Address,ProtocolAddress,ResponseTime
> C:\temp\ping.txt
die Ausgabe in eine Datei umgeleitet. Wenn Sie auch die Live-Ausgabe sehen möchten, führen Sie sie einfachGet-Content C:\temp\ping.txt -tail 10 -wait
in einer anderen PowerShell aus.Sie können dies in Bash tun (z. B. Linux oder WSL):
Obwohl es nicht die Statistiken gibt, die Sie normalerweise erhalten, wenn Sie am Ende ^ C drücken.
quelle
date +%s
ist hilfreicher, da es ganzzahlige Zeitstempel anzeigt.Batch-Skript:
Dieses Skript fragt nach dem zu pingenden Host. Die Ping-Ausgabe wird auf dem Bildschirm und in der Protokolldatei ausgegeben. Beispiel für die Ausgabe einer Protokolldatei:
Die Protokolldatei heißt LOG_ [Hostname] .log und wird in denselben Ordner wie das Skript geschrieben.
quelle
Dies könnte jemandem helfen: [Muss in Windows PowerShell ausgeführt werden]
- Suchen Sie im aktuellen Verzeichnis oder im Benutzer-Home-Pfad nach der Datei Ping_IP.txt.
Mit dem obigen Befehl können Sie in einer Datei wie der folgenden ausgeben.
quelle
Unter Windows
Sie können eine der anderen Antworten verwenden.
Unter Unix / Linux
Oder als Funktion
pingt
für Ihr ~ / .bashrc:Quelle: https://stackoverflow.com/a/26666549/1069083
quelle
-w
ist eine ungültige Option zuping
.Ich denke, mein Code ist das, was jeder braucht:
anzuzeigen:
Hinweis : Code, der in einer Befehlszeile verwendet werden soll, und auf OS muss Powershell vorinstalliert sein.
quelle
Dies könnte in die Rechnung für spätere Windows-Versionen passen:
quelle
Versuche dies:
Erstellen Sie eine Batchdatei mit den folgenden Angaben:
Sie können dem Ping-Befehl je nach Ihren Anforderungen eigene Optionen hinzufügen. Dadurch wird der Zeitstempel nicht in dieselbe Zeile wie der Ping gesetzt, aber Sie erhalten trotzdem die Informationen, die Sie benötigen.
Ein noch besserer Weg ist die Verwendung von fping. Klicken Sie hier http://www.kwakkelflap.com/fping.html , um es herunterzuladen.
quelle
Verwenden
Von der Manpage
Ausgabe
quelle
Versuchen Sie dies insted:
quelle
Eine andere Powershell-Methode (ich wollte nur Fehler)
quelle
Ich benötige dies auch, um das Netzwerkproblem auf mein Problem mit dem Zeitlimit für die Datenbankspiegelung zu überwachen. Ich benutze den Befehlscode wie folgt:
Sie müssen nur Google.com an Ihren Servernamen ändern. Es funktioniert perfekt für mich. und denken Sie daran, dies zu beenden, wenn Sie fertig sind. Die Datei pingtest.txt wird um ca. 4,5 KB pro Minute erhöht.
Vielen Dank für raymond.cc. https://www.raymond.cc/blog/timestamp-ping-with-hrping/
quelle
Eine Verbesserung der Antwort von MC ND für Windows.
Ich brauchte ein Skript, um in WinPE ausgeführt zu werden, also habe ich Folgendes getan:
Dies kann auf eine bestimmte IP-Adresse (
192.168.1.1
in meinem Beispiel) fest codiert werden oder einen übergebenen Parameter annehmen. Und wie in der Antwort von MC ND wird der Ping etwa alle 1 Sekunde wiederholt.quelle
Einfach 😎:
quelle
Anstatt das zusätzliche
ping -n 2 localhost
am Ende der Schleife zu haben, können Sie einfach das Zeichen R vorher hinzufügen,!data!
da die einzigen Möglichkeiten Antworten oder Anfordern sind. Das erste Zeichen wird aus dem verbrauchtpause>nul
. Also anstatt den folgenden Ausdruck zu haben:Sie können diesen Ausdruck verwenden:
Welches erzeugt die gleiche Ausgabe zB:
quelle