- shell之ping減少時間間隔&ping的次數
作為一位新手,檢測IP地址是否正常使用,ping是一個很不錯的選擇,可以更快的探測到當前網路的可用IP,並進行到文檔。
步驟如下:
首先:創建一個腳本文件並進行編輯:
1 # vim ping.sh
然后:寫入腳本,內容如下:
#!/bin/bash
for a in `seq 2 254`; do
ping -i 0.1 -c 1 192.168.56.$a > /dev/null r=$? if [ $ -ne 0 ]; then #ping不通的網絡標記為1
echo "ping 192.168.56.${a} 1"
else
#可以ping通的網絡標記為0000000000
echo "ping 192.168.56.${a} 0000000000" fi done
之后,運行腳本:
1 # bash ping.sh > ping.txt
注:運行腳本時,因其網絡不通導致其卡着好久才出結果,所以可以用快捷鍵Ctrl + c 進行終止,直到腳本結束,然后打開ping.txt的文件進行查看即可。
腳本講解:
seq 2 :即列出2-254見的數字作為a的值
ping :-i 即設置每個IP的ping的時間間隔,此處腳本為設置成0.1秒
ping :-c即設置每個IP中ping的次數,此處設置為1次
/dev/null :隱藏ping的過程
$? : 表示上一條命令的返回值(即ping是否成功執行),執行成功,返回0,執行失敗,返回1
ne :測試兩個整數是否相等,即返回值是否等於0
> :傳遞值到某文件(會覆蓋之前的內容,慎用!!!)
>> :追加內容到某文件后(不覆蓋,在最后增加 )
- 用IP1去ping IP2的技巧
1 # ping -S 192.168.56.66 192.168.56.50
注釋:ping -S(大寫S) :為指定前一個IP去ping后一個IP