我有一个调用 bash 脚本的 crontab 条目。为什么 $USER return 空白?
I have a crontab entry that calls a bash script. Why does $USER return blank?
在监控 shell 脚本中,$USER
returns 当来自用户的 crontab 运行 时空白?但是,$USER
returns 当脚本是来自命令行的 运行 时进行“实验”。
# CRON: execute monitor script every minute on user:experiment
*/1 * * * * /home/experiment/monitor
正如评论中所建议的那样,cron
使用了一个相当小的环境,其中大部分环境变量未定义,而且 $PATH
非常短。在crontab
的很多版本中,你可以在crontab
文件的顶部定义你需要的变量,像这样:
USER=foo
BAR=baz
PATH=/bletch:/bazoo:"$PATH"
在监控 shell 脚本中,$USER
returns 当来自用户的 crontab 运行 时空白?但是,$USER
returns 当脚本是来自命令行的 运行 时进行“实验”。
# CRON: execute monitor script every minute on user:experiment
*/1 * * * * /home/experiment/monitor
正如评论中所建议的那样,cron
使用了一个相当小的环境,其中大部分环境变量未定义,而且 $PATH
非常短。在crontab
的很多版本中,你可以在crontab
文件的顶部定义你需要的变量,像这样:
USER=foo
BAR=baz
PATH=/bletch:/bazoo:"$PATH"