1. 程式人生 > >Shell中檢測某一網段IP線上與否的指令碼

Shell中檢測某一網段IP線上與否的指令碼

作為系統管理員或者執行維護人員,經常會碰到檢查某個網段IP是up還是down的情況,這個時候肯定不會一個個手工去ping的,寫指令碼是肯定的,小指令碼其實很簡單

#!/bin/bash
set -xv

ip1='192.168.0'

for ip2 in $(seq 0 254)
do
    ip=${ip1}.${ip2}
    ping -c 2 -i 1 -w 1 $ip > /dev/null 2>&1
    if [ $? -eq 0 ]; then
        echo -e "ip:$ip up"   | tee -a up.txt
    else
        echo -e "ip:$ip down" | tee -a down.txt
    fi

done