我目前正在嘗試編寫一個bash腳本來記錄atm的平均ping時間。三個不同的目標,每20秒一整天。 這是我目前有..Bash腳本記錄平均ping時間,每20秒一天
#!/bin/bash
echo "SCRIPT STARTED" >> pingthing.log
date +%d.%m.%y' '%R:%S >> pingthing.log
for i in $(seq 1 4320);
do
date +%d.%m.%y' '%R:%S >> pingthing.log
#save just target IP and avg time.
ping -c 3 -q -W 2 8.8.8.8 >> pingthing.log
ping -c 3 -q -W 2 64.25.40.16 >> pingthing.log
ping -c 3 -q -W 2 96.17.199.48 >> pingthing.log
sleep 20
done
echo "SCRIPT ENDED" >> pingthing.log
date +%d.%m.%y' '%R:%S >> pingthing.log
我們我的問題...
- 如何用sed/awk的平總結剛剛保存目標和平均時間?
- 以及我如何處理100%的損失情況?
編輯:對不起,我有SED/AWK沒有經驗,但知道它可以使用這些工具來完成..讓我試圖澄清自己
這是什麼是目前保存在我的日誌文件。 。但這隻能表明它的開始
SCRIPT STARTED
07.02.14 22:14:13
07.02.14 22:14:13
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 127.773/152.321/192.204/28.452 ms
PING 64.25.40.16 (64.25.40.16) 56(84) bytes of data.
--- 64.25.40.16 ping statistics ---
3 packets transmitted, 3 received, +2 duplicates, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 213.889/237.182/286.825/26.656 ms
PING 96.17.199.48 (96.17.199.48) 56(84) bytes of data.
--- 96.17.199.48 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 305.028/340.081/375.135/35.058 ms
現在我想只有目標和它的平均值。 ping命令的像
SCRIPT STARTED
07.02.14 22:14:13
07.02.14 22:14:13
8.8.8.8 152.321
64.25.40.16 237.182
96.17.199.48 340.081
時候我知道,我應該管的ping命令SED/AWK但我有這個,我離開它暫時沒有經驗。
我不想讓你解決一切,我來這裏討論和學習。 對於100%的損失問題..輸出是這樣的
平-W 2 -Q -C 3 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
--- 1.1.1.1 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2016ms
現在,這裏是沒有彙總行與成功的人平,所以我不能使用SED/AWK該模式..
你嘗試過什麼了嗎?它如何失敗?你學習了什麼awk?我們不是「免費解決所有我的問題」社區。 –
如果您需要sed或awk腳本,您至少需要爲該腳本提供一些樣本輸入和預期輸出。例如,如果你想分析'ping -c 3 -q -W 2'的輸出,那麼你需要發佈'ping -c 3 -q -W 2 '的樣本輸出,因爲這將是樣本輸入您的sed或awk腳本,然後您需要發佈您希望sed或awk腳本從該示例輸入中生成的輸出。 –
您不需要在SO上籤署您的問題,我們已經可以看到您的用戶名。 – Nit