嗨,我编写了以下 bash 脚本:
cat /home/xyz/wlandiscovery.sh
#!/bin/bash
DATE=`date +%d-%m-%Y__%H:%M:%S`
#Get the current standard interface e.g. eth0
INTERFACE=`route | grep '*' | awk '{print $8}'`
#Check if mac is available
if /usr/bin/arp-scan --interface $INTERFACE -l -r 5 | grep "xx:xx:xx:xx:xx:xx"
then
echo -e "$DATE AVAILABLE!" >> /home/xyz/wlandiscovery.log
else
echo -e "$DATE NOT AVAILABLE" >> /home/xyz/wlandiscovery.log
fi
exit 0
如果我运行它并且mac可用,我会得到“可用”,如果我断开设备它会给出“不可用”......所以按预期运行。
但是,如果我每 5 分钟将它作为 Cronjob 运行一次,我总是会得到“不可用”:(在 Debian 系统上)
crontab -e
#......
*/5 * * * * /bin/bash /home/xyz/wlandiscovery.sh
这里有什么问题?