我正在构建一个接口,基本上列出我本地网络中“活着”的计算机,并且或多或少都有这些节点的列表及其“状态”。
我在farm_ping.sh
/Volumes/raid/farm_scripts/_apps/_scripts/farm_ping.sh
的文件
此文件包含以下内容,它只是ping IP并将其结果写入也由给定IP命名的txt文件:
HOSTS="192.168.1.110"
# no ping request
COUNT=1
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
# 100% failed
echo "Host : $myHost is down (ping failed) at $(date)" > /Volumes/raid/farm_script/nodes_response/$myHost.txt
else
# 100% Passed
echo "Host : $myHost is running (ping successful) at $(date)" > /Volumes/raid/farm_script/nodes_response/$myHost.txt
fi
done
我希望每分钟运行一次这个脚本,这就是我创建一个cron作业所做的事情:
env EDITOR=nano crontab -e
在我写的cron工作中:
1 * * * * /Volumes/raid/farm_script/_apps/_scripts/farm_ping.sh
我保存了这个文件,但是已经有30分钟了,还没有写过,我做错了什么?
答案 0 :(得分:1)
问题是cronjob语法。
1 * * * *
在上下文中,*
表示每个可能的值,而数字表示特定时间。所以这个文学意味着每个星期每个月每天每小时的第1分钟。
用*
替换1会使其每分钟都运行一次。