Linux

在部分 ping 輸出旁邊顯示時間和日期

  • May 6, 2020
#!/bin/bash
ping -c 1 8.8.8.8 | awk '{print $7}'
date

所以對於上面的程式碼,我希望它在下面以這種格式顯示日期和時間

Tue May 5 11:11:11 UTC 2020  time=0.838 ms

到目前為止,它列印了這個輸出

data.
time=1.24
packet
Tue May  5 23:31:33 UTC 2020

我想要 UTC 2020 旁邊的 time=1.24

ping -c 1 8.8.8.8 | awk -v date="$(date)" '$7 ~ /^time/{ print date, $7, $8 }'

這會將date命令替換的輸出保存在 awk 變數中date,並且僅當第 7 個欄位以 . 開頭時才列印日期以及第 7 個和第 8 個欄位time

如果指定的方式,這應該出現。

echo -n "$(date) "
ping -c 1 8.8.8.8 | awk '$7 ~ /^time=/ {print $7}'

如果您想要單位欄位,則不完全清楚,因為您的文章有衝突的樣本。如果這樣做,請像這樣更改結尾print $7,$8

引用自:https://unix.stackexchange.com/questions/584820