[英]Continue a bash script
在成功查看主機(IP)后,我需要對其進行ping操作,以檢查它們是否啟動。 SIDS文件包含2列帶有主機名的列。 關於如何改進下面的代碼有什么建議嗎?
#!/bin/bash
LINES=`cat /home/marko/SIDS | sed "s!/!-!g" | wc -l`
for (( i=1; i<=${LINES}; i++))
do
FIRSTIP=CPE-`sed -n "${i}{p;q}" /home/marko/SIDS | awk '{print $1}'| sed "s!/!-!g"`
SECONDIP=CPE-`sed -n "${i}{p;q}" /home/marko/SIDS | awk '{print $2}'| sed "s!/!-!g"`
COUNT=$( host ${FIRSTIP} | grep address | wc -l )
if [ $COUNT -gt 0 ]
then
echo success
else
echo ${SECONDIP}
fi
done
您可以只使用dig
,以避免搜索host
的輸出:
IP=$(dig +short $SERVERNAME)
然后檢查主機是否還活着:
if ping -q -c $IP >/dev/null 2>&1
then
echo "OK"
fi
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.