我有三个问题,所有问题都与 crontab 有关。
我可以访问
$HOME
crontab 中的变量吗?例如,$HOME
像这样使用:PATH=$HOME/bin:$HOME/scripts:$PATH
?或者* * * * * echo "test" > $HOME/test.txt
?我想让 crontab 正常重定向
stdout
到/dev/null
,但将邮件重定向stderr
到用户。例如,当计算机处于不是连接到网络,然后 crontab 中的条目* 2 * * * getmail -n -q ...
将返回错误,因此 crontab 将向用户发送包含此错误的电子邮件。基于上面的例子,
getmail
当系统运行时将让 crontab 邮件用户不是连接到网络,所以我想要一种方法来检测用户是否连接到网络。
关于此检测方法,应有如下几点:
快速地
简单的
易于与其他 crontab 作业结合使用(例如使用控制:&&、||、| 等)
答案1
- 当然
* 2 * * * getmail -n -q ... > /dev/null
如果你想重定向 stdout 和 stderr,那么... 2>&1 > /dev/null