我正在服务器上通过 Cron Job 运行 Bash 脚本,我需要自行调用并结束它。
脚本:
#!/bin/bash
while [ true ]
do
DATE=`date "+%d.%m.%Y. %H:%M"`
MSG='STUFF HERE'
test=`/usr/sbin/asterisk -rx "sip show peers" | grep UNKNOWN `
if [ -z "$test" ]; then
sleep 100
else
top=`top -bn1 | tail`
echo -e "$test" | mail -r "support@abc.com" -s "SIP Peer UNKNOWN/UNSPECIFIED `hostname` $DATE" abc@cabc.com
sleep 900
fi
done
我需要它不要自行重置 我会在需要时通过 cron 调用脚本。
谢谢
最佳答案
当您使用 cron 调用它时,cron 必须处理循环。
删除 while
和 sleep
。当警告发出后,您想睡得更久,这应该在检测代码之外进行管理。稍后您将进行更多监控,仅在工作时间向不同的人发送邮件,也许还使用邮件以外的其他东西。
关于linux - 调用 Bash 脚本并结束,而不是再次重新启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41663415/