首页/系统/Linux 运维命令速查/cron 环境变量:PATH/SHELL/MAILTO
定时任务与计划50 条

cron 环境变量:PATH/SHELL/MAILTO

cron 不读用户 profile,PATH 极简、没有 alias;在 crontab 顶部声明 PATH、MAILTO、SHELL,是任务稳定运行的第一道防线。

Linux 运维命令速查系统更新于 2026-10-12
用途让任务拥有可预期的执行环境
位置crontab 文件顶部(任务行之前)
常用PATH SHELL MAILTO HOME LANG

crontab 顶部声明

crontab 顶部声明
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SHELL=/bin/bash
MAILTO=ops@example.com
LANG=en_US.UTF-8

0 2 * * * /opt/app/backup.sh >> /var/log/backup.log 2>&1
任务里用到命令最好写绝对路径;服务化账号(如 www)的 PATH 与登录 shell 差异更大。

易错点

  • cron 中找不到 node/java/python:PATH 不同,用 which 查出的绝对路径写死
  • MAILTO 指向不可达的邮件系统时输出堆积在 /var/spool/mail 或静默丢失,统一重定向到日志更可靠

数据来源与参考

  • man 5 crontab(environment 一节)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌