- Linux 设置定时任务crontab命令
- 通过crontab -e修改,修改后立即生效
- 语法
- 星号(*):代表每的意思,例如month字段如果是星号,则表示每月都执行该命令操作。
- 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。
- *1 * * * * /usr/local/nagios/myplugin/check_state.sh
- 注意:crontab在运行sh脚本时,并不会加载用户的bash shell和环境变量
- 使用crontab应该注意的地方
- 由于crontab只加载/ect/environment,并不加载/etc/profile和~/.bash_profile,crontab只在 /sbin:/bin:/usr/sbin:/usr/bin 这几个目录下找,可以在sh脚本中增加命令来查看错误:$? &> /mmm/nagiostemp/1.txt,添加source ~/.bashrc 解决
- 在运行crontab的时候,是non_login方式调用程序的,此时~/.bash_profile并不会被提前调用。所以,crontab的运行环境相对于login方式进入bash运行的环境来说小得多。如果程序涉及~/.bash_profile使用的环境变量,那么,部分在login方式可以正常运行的程序在crontab下就无法运行,需要设置环境变量
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。