crontab定时任务

  • Linux 设置定时任务crontab命令
  • 通过crontab -e修改,修改后立即生效
    • 其实只是修改了当前用户的设置,系统会自动就存放于/var/spool/cron/目录中,文件以用户名命名.linux的cron服务是每隔一分钟去读取一次/var/spool/cron,/etc/crontab,/etc/cron.d下面所有的内容.
  • 语法
    • 星号(*):代表每的意思,例如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下就无法运行,需要设置环境变量

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...