ping は、組み込みネットワークデバイスを含む実質的にすべてのオペレーティングシステムで使用できるコマンドラインネットワーク管理ユーティリティです。これは主に、ネットワーク上のホストの接続性または到達可能性をテストするために使用されます。デフォルトでは、pingコマンドは出力にタイムスタンプを表示しません。何らかの理由でpingコマンド出力を使用してタイムスタンプを印刷する場合は、このチュートリアルでその方法を説明します。
LinuxでのPingコマンド出力を使用したタイムスタンプの印刷
ping
でタイムスタンプを表示するには コマンドの出力は、-D
を渡すだけです。 以下のようなフラグ。
$ ping -c 3 -D ostechnix.com
出力例:
PING ostechnix.com(2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886)) 56 data bytes [1611825018.797092] 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=1 ttl=57 time=94.8 ms [1611825019.616530] 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=2 ttl=57 time=114 ms [1611825020.615700] 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=3 ttl=57 time=112 ms [1611825021.596463] 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=4 ttl=57 time=91.5 ms [1611825022.619467] 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=5 ttl=57 time=113 ms --- ostechnix.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4006ms rtt min/avg/max/mdev = 91.543/105.095/114.408/9.815 ms
上記の出力にあるように、ping
コマンドはタイムスタンプを出力しました(gettimeofday
のようにUNIX時間+マイクロ秒 )各行の前。私の場合、[1611825018.797092]
、[1611825019.616530]
、.... [1611825022.619467]
タイムスタンプです。
Pingコマンドにはタイムスタンプを有効にするオプションがありますが、出力はそれほどユーザーフレンドリーではありません。タイムスタンプを人間が読める形式で表示する場合は、ts
を使用します 次のセクションに示すようにコマンドを実行します。
tsコマンドを使用してPingコマンド出力でタイムスタンプを有効にする
ts
コマンドはmoreutilsの一部です パッケージ。 Linuxコマンドの出力の各行の先頭にタイムスタンプを出力します。
ts
を使用するには コマンドを実行するには、次のリンクに示すようにmoreutlisパッケージをインストールする必要があります。
- Moreutils –より便利なUnixユーティリティのコレクション
これで、ping
の出力の各行にタイムスタンプを表示できます。 以下のようなコマンド:
$ ping -c 5 ostechnix.com | ts
出力例:
Jan 28 16:38:40 PING ostechnix.com(2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886)) 56 data bytes Jan 28 16:38:40 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=1 ttl=57 time=76.7 ms Jan 28 16:38:41 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=2 ttl=57 time=93.2 ms Jan 28 16:38:42 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=3 ttl=57 time=84.8 ms Jan 28 16:38:43 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=4 ttl=57 time=84.3 ms Jan 28 16:38:44 64 bytes from 2606:4700:20::ac43:4886 (2606:4700:20::ac43:4886): icmp_seq=5 ttl=57 time=108 ms Jan 28 16:38:44 Jan 28 16:38:44 --- ostechnix.com ping statistics --- Jan 28 16:38:44 5 packets transmitted, 5 received, 0% packet loss, time 4006ms Jan 28 16:38:44 rtt min/avg/max/mdev = 76.718/89.390/107.965/10.646 ms
各行の先頭にあるタイムスタンプに気づきましたか?はい、それらはタイムスタンプであり、今では理解しやすいです。 pingコマンドだけでなく、ts
コマンドは、任意のコマンドの出力のタイムスタンプを表示できます。
これがお役に立てば幸いです。
関連記事:
- Gpingを使用してPingコマンド出力をグラフ形式で表示する
- きれいにする–Pingコマンドの出力をより美しく読みやすくする
- Linuxで一度に複数のホストにpingを実行する方法
- 複数のサーバーにpingを実行し、出力をトップのようなテキストUIに表示する