linux – Bash脚本不能用作cron作业
发布时间:2020-12-13 17:01:51 所属栏目:Linux 来源:网络整理
导读:我有以下 shell脚本 $cat capture.sh TIME=$(date +"%H-%M-%d-%m-%y") IP="203.208.198.29" PREFIX=$TIME$IP tshark -f "udp" -i eth0 -w /root/captures/$PREFIX.cap pid=$! sleep 2m kill $pid 当我从shell执行它时运行正常. 但是当我将它添加到cron选项卡
我有以下
shell脚本
$cat capture.sh TIME=$(date +"%H-%M-%d-%m-%y") IP="203.208.198.29" PREFIX=$TIME$IP tshark -f "udp" -i eth0 -w /root/captures/$PREFIX.cap& pid=$! sleep 2m kill $pid 当我从shell执行它时运行正常. 但是当我将它添加到cron选项卡时没有任何反应. 我的crontab条目: tail /var/log/cron 显示该命令已执行. 但没有任何反应.我为capture.sh设置了“all”的可执行权限,为/ root / captures目录设置了“all”的写权限. 提前致谢 解决方法
您的PATH变量可能不是您期望它在cron中的变量.
使用脚本中每个可执行文件的完整路径,或在crontab或脚本中手动设置路径. 此外,停止tshark的更好方法是使用内置功能: -a <capture autostop condition> duration:value Stop writing to a capture file after value seconds have elapsed. 另外#2:添加一个shebang线(#!) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |