目次
crontab定时任务配置记录,crontab任务
一、前言
二、crontab目录 
三、crontab命令语法
四、crontab任务格式
五、关于命令的说明
六、注意事项
七、参考资料
ホームページ php教程 php手册 crontab定时任务配置记录,crontab任务

crontab定时任务配置记录,crontab任务

Jun 13, 2016 am 08:55 AM
crontab

crontab定时任务配置记录,crontab任务

一、前言

  今天简单记录下crontab的配置

二、crontab目录 

/etc/crontab 文件
    这是系统运行的调度任务
 
/var/spool/cron 目录
    用户自定义的crontab任务放在此目录下
 
ls –lrt /etc/cron*
   /etc/cron.deny     表示不能使用crontab命令的用户
   /etc/cron.allow     表示能使用crontab命令的用户
   默认情况下,cron.allow不存在,如果都存在,cron.allow优先
ログイン後にコピー

三、crontab命令语法

具体可 crontab --help 或者 man crontab|more

crontab –l   //查看当前用户的定时任务 
crontab –e  //编辑当前用户的定时任务
crontab –r  //删除当前用户的定时任务
ログイン後にコピー

四、crontab任务格式

59 23 * * *  /home/xxx/crontab/test.sh > /dev/null  2>&1 &

前6列暂且用C1 - C6表示

C1 分    (1-59)
C2 时    (1-23,0表示子夜)
C3 日    (1-31)
C4 月    (1-12)
C5 星期   (0-6,0表示星期天,1表示星期一,以此类推)
C6 要运行的命令

前5列表示 命令执行的频率,最小频率是每分钟一次,其中Cn的值可用四种形式表示:
*  ,  */n  , T1-T2 , a,b,c  

当C1 为 * 时,表示每分钟都要执行命令
当C1 为 */n时,表示每隔n分钟执行一次命令
当C1 为 T1-T2时,表示从 T1分钟 到 T2分钟时间内都要执行命令
当C1 为 a,b,c 时,表示第 a,b,c 分钟都要执行命令


示例调用:

12  12 * * *  /home/xxx/crontab/test.sh >/dev/null 2>&1 
表示每天的12点12分 执行脚本

*/2 *  *  *  *  /home/xxx/crontab/test.sh >/dev/null 2>&1
表示每隔2分钟 执行一次脚本

0 23 * * 1-5  /home/xxx/crontab/test.sh >/dev/null 2>&1
表示每周一到周五的23点 执行一次脚本

0 19 * * 0  mail -s "xxx" xxx@mail.com < /tmp/maildata
表示每周日的19点 发送邮件到 xxx@mail.com
ログイン後にコピー

五、关于命令的说明

关于命令中 /dev/null 2>&1 的解释

0  表示键盘输入
1  表示标准输出
2  表示错误输出

1.创建test.sh,内容如下

#! /bin/bash
echo "time is " `date`

2.添加定时任务

* * * * *    /home/xxx/crontab/test.sh > /home/xxx/crontab/test.log &    默认是1,和下面方法一致
* * * * *   /home/xxx/crontab/test.sh 1> /home/xxx/crontab/test.log &
* * * * *   /home/xxx/crontab/test.sh > /home/xxx/crontab/test.log  2>&1 &

3.说明

1代表,标准输出,所以上述命令会将脚本的输出结果,输出到后面指定的log文件中,而不是打印到屏幕;
2代表,错误输出,&1表示文件的描述,这里表示脚本执行的错误信息重定向到1(标准输出)
而1已经重定向到指定的log文件中,所以信息都会输出到log文件
不能写成 2>1 ,缺少&,会认为是错误信息输出到名称为 1 文件中
ログイン後にコピー

六、注意事项

1.shell中需设置必要的环境变量
  crontab的环境变量默认不包含系统当前用户的环境,所以需添加必要的环境变量

2.尽量采用完整路径方法,避免使用相对路径

3.避免脚本的重复执行
  if(exec("ps -ef |grep 'php'|grep 'updateScript'|grep -v 'grep' |wc -l ") > 2){
    die();  
  }

  grep -v 'grep'    表示结果去过滤掉 grep 那一行
  wc -l             表示统计满足条件的行数
  这样就可以判断 php进程中,名为 updateScript 的脚本 是否已经执行了
ログイン後にコピー

七、参考资料

http://www.cnblogs.com/kerrycode/p/3238346.html
http://www.cnblogs.com/hazir/p/sudo_command.html
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

crontab のスケジュールされたタスクが実行されない理由をご存知ですか? crontab のスケジュールされたタスクが実行されない理由をご存知ですか? Mar 09, 2024 am 09:49 AM

crontab のスケジュールされたタスクが実行されない理由をご存知ですか?

Systemd と Crontab を使用して Linux システムでタスクの並列実行を実装する方法 Systemd と Crontab を使用して Linux システムでタスクの並列実行を実装する方法 Sep 26, 2023 pm 06:37 PM

Systemd と Crontab を使用して Linux システムでタスクの並列実行を実装する方法

Linux で crontab ファイルのコメント付けと crontab の sh 実行の落とし穴を解決する方法 Linux で crontab ファイルのコメント付けと crontab の sh 実行の落とし穴を解決する方法 May 15, 2023 pm 09:58 PM

Linux で crontab ファイルのコメント付けと crontab の sh 実行の落とし穴を解決する方法

Linuxのcrontabエラーログを読む方法 Linuxのcrontabエラーログを読む方法 Mar 07, 2023 am 09:29 AM

Linuxのcrontabエラーログを読む方法

Systemd と Crontab を使用して Linux でアプリケーションを自動的に再起動する方法 Systemd と Crontab を使用して Linux でアプリケーションを自動的に再起動する方法 Sep 28, 2023 pm 03:35 PM

Systemd と Crontab を使用して Linux でアプリケーションを自動的に再起動する方法

Systemd と Crontab を使用して Linux システムでスケジュールされたタスクの優先順位を設定する方法 Systemd と Crontab を使用して Linux システムでスケジュールされたタスクの優先順位を設定する方法 Sep 27, 2023 am 08:25 AM

Systemd と Crontab を使用して Linux システムでスケジュールされたタスクの優先順位を設定する方法

Systemd と Crontab を使用して Linux システムでシステムの自動起動を実現する方法 Systemd と Crontab を使用して Linux システムでシステムの自動起動を実現する方法 Sep 26, 2023 am 11:57 AM

Systemd と Crontab を使用して Linux システムでシステムの自動起動を実現する方法

Linux Crontab エラー ログのトラブルシューティングのヒントの共有 Linux Crontab エラー ログのトラブルシューティングのヒントの共有 Mar 18, 2024 am 09:21 AM

Linux Crontab エラー ログのトラブルシューティングのヒントの共有

See all articles