Linux or mac 环境shell脚本定时任务crontab

 linux下使用crontab命令被用来提交和管理用户的需要周期性执行的任务,示例如下:
crontab -e 编辑周期任务

30 21 * * * /etc/init.d/smb restart 每晚的21:30重启smb

crontab命令说明:
 crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。

1、Linux和Mac下操作crontab都是一致的

2、配置文件都在/etc/crontab下,如果没有就创建。

3、测试发现直接使用crontab -e命令创建的定时任务是放在临时文件夹的,重启会删除,并且与/etc/crontab文件无关联。

如果出现以下问题

crontab: no crontab for hayek - using an empty one
crontab: "/usr/bin/vi" exited with status 1 
  1. 方法1:EDITOR=vim crontab -e 直接编辑,以后直接crontab -e直接打开就行。
  2. 方法2:export EDITOR=vim
  3. 方法3:向cron进程提交一个crontab文件之前,首先要设置环境变量EDITOR。cron进程根据它来确定使用哪个编辑器编辑crontab文件。9 9 %的UNIX和LINUX用户都使用vi,如果你也是这样,那么你就编辑$HOME目录下的. profile文件,在其中加入这样一行: 
    EDITOR=vi; export EDITOR

crontab服务的重启关闭,开启

  • Mac系统下

    sudo /usr/sbin/cron start
    sudo /usr/sbin/cron restart
    sudo /usr/sbin/cron stop
  • Ubuntu:

    sudo /etc/init.d/cron start
    sudo /etc/init.d/cron stop
    sudo /etc/init.d/cron restart

 

语法
 crontab(选项)(参数)
选项
 -e:编辑该用户的计时器设置;
 -l:列出该用户的计时器设置;
 -r:删除该用户的计时器设置;
 -u<用户名称>:指定要设定计时器的用户名称。
参数
 crontab文件:指定包含待执行任务的crontab文件。

 

 

你可能感兴趣的:(Linux or mac 环境shell脚本定时任务crontab)