Jadual Kandungan
crontab定时任务配置记录,crontab任务
一、前言
二、crontab目录 
三、crontab命令语法
四、crontab任务格式
五、关于命令的说明
六、注意事项
七、参考资料
Rumah 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优先
Salin selepas log masuk

三、crontab命令语法

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

crontab –l   //查看当前用户的定时任务 
crontab –e  //编辑当前用户的定时任务
crontab –r  //删除当前用户的定时任务
Salin selepas log masuk

四、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
Salin selepas log masuk

五、关于命令的说明

关于命令中 /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 文件中
Salin selepas log masuk

六、注意事项

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 的脚本 是否已经执行了
Salin selepas log masuk

七、参考资料

http://www.cnblogs.com/kerrycode/p/3238346.html
http://www.cnblogs.com/hazir/p/sudo_command.html
Salin selepas log masuk

 

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Adakah anda tahu beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan? Adakah anda tahu beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan? Mar 09, 2024 am 09:49 AM

Ringkasan beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan Masa kemas kini: 9 Januari 2019 09:34:57 Penulis: Harapan di medan ini terutamanya meringkaskan dan memperkenalkan kepada anda beberapa sebab mengapa tugas berjadual crontab tidak dilaksanakan setiap orang Penyelesaian diberikan untuk setiap pencetus yang mungkin, yang mempunyai rujukan dan nilai pembelajaran tertentu untuk rakan sekerja yang menghadapi masalah ini. Pelajar yang memerlukan boleh mengikuti editor untuk belajar bersama-sama: Saya telah menghadapi beberapa masalah di tempat kerja yang dijadualkan tugas tidak dilaksanakan Kemudian, apabila saya mencari di Internet, saya mendapati bahawa Internet terutamanya menyebut lima insentif ini: 1. Perkhidmatan crontab bukan fungsi kernel Linux, tetapi bergantung pada cron.

Cara menggunakan Systemd dan Crontab untuk melaksanakan pelaksanaan tugasan selari dalam sistem Linux Cara menggunakan Systemd dan Crontab untuk melaksanakan pelaksanaan tugasan selari dalam sistem Linux Sep 26, 2023 pm 06:37 PM

Cara menggunakan Systemd dan Crontab untuk melaksanakan pelaksanaan tugas selari dalam sistem Linux Dalam sistem Linux, pelaksanaan tugas selari adalah salah satu cara penting untuk meningkatkan kecekapan dan prestasi sistem. Artikel ini akan memperkenalkan cara menggunakan alat Systemd dan Crontab untuk melaksanakan pelaksanaan tugasan selari dalam sistem Linux dan menyediakan contoh kod khusus. 1. Pengenalan kepada Systemd Systemd ialah alat yang digunakan untuk mengurus proses permulaan dan pengurusan perkhidmatan sistem Linux. melalui konfigurasi

Bagaimana untuk menyelesaikan masalah mengulas fail crontab dan crontab melaksanakan sh dalam Linux Bagaimana untuk menyelesaikan masalah mengulas fail crontab dan crontab melaksanakan sh dalam Linux May 15, 2023 pm 09:58 PM

Linux menganotasi fail crontab dan perlaksanaan crontab sh ternyata bahawa banyak crontab ditulis di bawah Linux untuk melaksanakan tugas tertentu dengan kerap: Keperluan: Ia adalah untuk menganotasi tugas crontab tertentu dibatalkan. Cuma tambah '#' sebelum tugasan. cth.54**sunecho"runat5after4everysunday" Ulasan: #54**sunecho"runat5after4everysunday"Semudah itu. Terjumpa pit 1, lihat contoh berikut baru-baru ini

Bagaimana untuk membaca log ralat crontab linux Bagaimana untuk membaca log ralat crontab linux Mar 07, 2023 am 09:29 AM

Cara melihat log ralat crontab di Linux: 1. Lihat direktori fail "/var/log/cron" 2. Gunakan arahan "tail -f /var/log/cron" untuk melihat ekor fail secara nyata masa; 3. Gunakan arahan "vim /var /log/cron" boleh dilihat melalui pemapar teks lanjutan.

Bagaimana untuk memulakan semula aplikasi secara automatik dalam Linux menggunakan Systemd dan Crontab Bagaimana untuk memulakan semula aplikasi secara automatik dalam Linux menggunakan Systemd dan Crontab Sep 28, 2023 pm 03:35 PM

Cara menggunakan Systemd dan Crontab untuk memulakan semula aplikasi secara automatik dalam sistem Linux Dalam sistem Linux, Systemd dan Crontab adalah dua alat yang sangat penting. Systemd ialah pengurus sistem dan perkhidmatan, manakala Crontab ialah alat untuk mengautomasikan tugas pada masa tertentu. Artikel ini akan menggunakan contoh khusus untuk memperkenalkan cara menggunakan Systemd dan Crontab untuk memulakan semula aplikasi secara automatik dalam sistem Linux. Katakan kita mempunyai No

Cara menggunakan Systemd dan Crontab untuk merealisasikan sistem bermula sendiri dalam sistem Linux Cara menggunakan Systemd dan Crontab untuk merealisasikan sistem bermula sendiri dalam sistem Linux Sep 26, 2023 am 11:57 AM

Cara menggunakan Systemd dan Crontab untuk melaksanakan sistem dimulakan sendiri dalam sistem Linux Pengenalan: Dalam sistem Linux, kita selalunya perlu menetapkan beberapa perkhidmatan atau skrip yang biasa digunakan kepada sistem dimulakan sendiri supaya ia boleh berjalan secara automatik selepas sistem dimulakan semula. Dalam artikel ini, kami akan memperkenalkan cara menggunakan dua alat Systemd dan Crontab untuk merealisasikan sistem bermula sendiri, dan memberikan contoh kod khusus. 1. Penggunaan Systemd Systemd ialah sistem dan pengurusan perkhidmatan yang biasa digunakan dalam sistem pengendalian Linux.

Cara menggunakan Systemd dan Crontab untuk menetapkan keutamaan tugas berjadual dalam sistem Linux Cara menggunakan Systemd dan Crontab untuk menetapkan keutamaan tugas berjadual dalam sistem Linux Sep 27, 2023 am 08:25 AM

Cara menggunakan Systemd dan Crontab untuk menetapkan keutamaan tugas berjadual dalam sistem Linux memerlukan contoh kod khusus Dalam sistem Linux, kita selalunya perlu menyediakan tugas berjadual untuk melakukan beberapa operasi berulang, seperti fail sandaran berjadual, pembersihan log biasa, dll. Walau bagaimanapun, tugasan yang berbeza mungkin mempunyai keutamaan yang berbeza, sesetengah tugas memerlukan keutamaan yang lebih tinggi untuk memastikan ia dilaksanakan tepat pada masanya, manakala beberapa tugasan boleh dilaksanakan kemudian. Artikel ini akan memperkenalkan cara menggunakan Systemd dan Crontab untuk menetapkan pemasaan

Perkongsian petua penyelesaian masalah log ralat Linux Crontab Perkongsian petua penyelesaian masalah log ralat Linux Crontab Mar 18, 2024 am 09:21 AM

Petua penyelesaian masalah log ralat LinuxCrontab dikongsi dalam sistem Linux Crontab ialah alat pengurusan tugas berjadual yang sangat biasa digunakan yang boleh membantu pengguna melakukan tugasan tertentu dengan kerap. Walau bagaimanapun, kadangkala anda akan menghadapi beberapa ralat semasa menggunakan Crontab, yang perlu disemak dan diselesaikan dalam masa. Artikel ini akan berkongsi beberapa petua untuk menyelesaikan masalah log ralat Crontab dan cara mencari dan menyelesaikan masalah melalui contoh kod tertentu. Lihat log Crontab Pertama, kita boleh melihat Crontab

See all articles