我正在编写一个脚本,该脚本从网址获取一些重要数据(通过cronjob),如果失败则会发送一封电子邮件,但是,它似乎无法识别它是否失败(checking wget's return value [if]) :
wget_output=$(wget --tries=1 --timeout=300 -r -N -nd -np --reject=html https://myurl/ -P ../data)
if [ $? -ne 0 ]
then
echo "send email here" >> ./test.txt
else
echo "send email here" >> ./test2.txt
fi
它只试了一次(如说的那样)然后放弃,但不承认它已成功与否。我假设我没有正确处理退出代码或其他东西。任何的想法?感谢
答案 0 :(得分:2)
您使用的wget
版本是什么?版本1.15的手册页的退出状态部分说:
在1.12之前的Wget版本中,Wget的退出状态往往无益且不一致。无论遇到任何问题,递归下载几乎总是返回0(成功),非递归提取仅返回与最近尝试下载相对应的状态。