我今天早上刚刚在Bash写了一个ping扫描脚本,猜猜是什么:它不起作用.你可以检查一下我错过了什么.
这是脚本:
for i in `seq 1 255`
do
if ["$(ping -c1 -W1 -n 192.168.1.$i | grep '%' | cut -d',' -f3 | cut -d' ' -f2)" -eq "0%"]
then echo "Host live"
else echo "Host down"
fi
done
Run Code Online (Sandbox Code Playgroud)
这是错误:
bash: [0%: command not found
Host down
bash: [100%: command not found
Host down
Run Code Online (Sandbox Code Playgroud)
我的目的是制作ping扫描程序,扫描范围192.168.1.1-255并通知主机的状态.我知道nmap,但只想学习Bash的技能,所以我做了这个.请尝试告诉错误的含义.我的意思是什么命令它指的是"命令未找到"?
小智 5
ping
如果有任何问题,该命令将返回错误代码,因此您无需解析输出:
for i in {1..255}
do
if ping -c1 -W1 -n "192.168.1.$i"
then
echo 'Host live'
else
echo 'Host down'
fi
done
Run Code Online (Sandbox Code Playgroud)