在本文中,您将会了解到关于PHP、shell、crontab执行定时任务的新资讯,同时我们还将为您解释php定时任务执行脚本的相关在本文中,我们将带你探索PHP、shell、crontab执行定时任务
在本文中,您将会了解到关于PHP 、shell、crontab 执行定时任务的新资讯,同时我们还将为您解释php定时任务执行脚本的相关在本文中,我们将带你探索PHP 、shell、crontab 执行定时任务的奥秘,分析php定时任务执行脚本的特点,并给出一些关于 Crontab定时任务 - 定时执行python脚本部署、CentOS Linux使用crontab运行定时任务详解、centos7 利用 crontab 执行 定时任务 计划任务、CentOS和Linux使用crontab运行定时任务的实用技巧。
本文目录一览:- PHP 、shell、crontab 执行定时任务(php定时任务执行脚本)
- Crontab定时任务 - 定时执行python脚本部署
- CentOS Linux使用crontab运行定时任务详解
- centos7 利用 crontab 执行 定时任务 计划任务
- CentOS和Linux使用crontab运行定时任务
PHP 、shell、crontab 执行定时任务(php定时任务执行脚本)
为了实现自动更新网站数据的功能,使用 PHP 、shell、crontab 执行定时下载文件、读取文件并更新数据库。
一、思路
1、linux 编写 shell 使用 wget 下载链接文件。
2、php 读取下载的文件并存储数据到数据库。
3、使用 linux crontab 定时任务执行 1、2 步骤即可。
代码如下:
1、shell 代码
#!/bin/sh
if
#wget 下载文件并把文件按照日期重命名
wget -c http://www.****.cn/***/***C?type=productType -O /home/***/$(date -d "today" +"%Y%m%d")productType.txt -o /***/wget.log
wget -c http://www.****.cn/***/***C?type=product -O /home/***/$(date -d "today" +"%Y%m%d")product.txt -o /***/wget.log
#把下载好的文件复制到PHP项目中
cp /***/$(date -d "today" +"%Y%m%d")productType.txt /***/w***/default/****/upload/$(date -d "today" +"%Y%m%d")productType.txt
cp /***/$(date -d "today" +"%Y%m%d")product.txt /***/upload/$(date -d "today" +"%Y%m%d")product.txt
then
echo "数据下载成功!">>/***/access.log;
date +%Y%m%d%H%I%S>>/***/access.log
else
echo "数据下载失败!">>/***/error.log;
date +%Y%m%d%H%I%S>>/***/error.log
fi
2、PHP 代码
<?php
/**
* Created by PhpStorm.
* User: liang
* Date: 2017/6/19
* Time: 15:59
*/
$handler = mysql_connect("localhost", "root", "****");
mysql_select_db("****_products");
mysql_query("SET AUTOCOMMIT=0");//设置为不自动提交,因为MYSQL默认立即执行
mysql_query("BEGIN");//开始事务
if (empty($dopost)) $dopost = "";
$file = "upload/".date("Ymd",time()).''productType.txt'';
$get = fopen($file, ''r'');//mysql读取文件
if ($get) {
$del = "DELETE FROM `#@__products_type`";
$js = $dsql->ExecuteNoneQuery($del);
while (!feof($get)) {
$oneline = fgets($get);
$contents = explode("ξδθ", $oneline);
$id = $contents[0];
$name = $contents[1];
$er = $contents[2];
$err = $contents[3];
if ($name == null || $err != null) {
echo "本条数据格式不正确,上传失败" . ''<br/>'';
} else {
echo $id . "|" . $name . ''<br/>'';
$inquery = "INSERT INTO `#@__products_type`(id,name) VALUES (''$id'',''$name'')";
$dsql->ExecuteNoneQuery($inquery);
}
}
} else {
echo "更新产品类型失败!请使用“上传产品资料”功能更新数据!" . ''</br>'';
die;
}
$file = "upload/".date("Ymd",time()).''product.txt'';
$fh = fopen($file, ''r'');
if ($fh) {
echo "内容为:" . ''<br/>'';
while (!feof($fh)) {
$oneline = fgets($fh);
$contents = explode("ξδθ", $oneline);
$id = $contents[0];
$progress = $contents[1];
$testDepartmentID = $contents[2];
$ProductName = $contents[3];
$ProductModel = $contents[4];
$ProductType = $contents[5];
$ProductTypeName = $contents[6];
$SendCompany = $contents[7];
$SendCompanyAddress = $contents[8];
$SendCompanyZIP = $contents[9];
$SendCompanyPhone = $contents[10];
$SendCompanyFax = $contents[11];
$SendCompanyAtificialPerson = $contents[12];
$ReportNo = $contents[13];
$ReportResult = $contents[14];
$XKZNo = $contents[15];
$XKZValidDate_Begin = $contents[16];
$XKZValidDate_End = $contents[17];
$deleted = $contents[18];
$er = $contents[19];
$err = $contents[20];
if ($deleted == null || $err != null) {
echo "本条数据格式不正确,上传失败" . ''<br/>'';
} else {
$row = $dsql->GetOne("SELECT id FROM `#@__products` WHERE ReportNo = ''$ReportNo''");
$shuzu = $row[''id''];
echo $id . "|" . $progress . "|" . $testDepartmentID . "|" . $ProductName . "|" . $ProductModel . "|" . $ProductType . "|" . $ProductTypeName . "|" . $SendCompany . "|" . $SendCompanyAddress . "|" . $SendCompanyZIP . "|" . $SendCompanyPhone . "|" . $SendCompanyFax . "|" . $SendCompanyAtificialPerson . "|" . $ReportNo . "|" . $ReportResult . "|" . $XKZNo . "|" . $XKZValidDate_Begin . "|" . $XKZValidDate_End . "|" . $deleted . ''<br/>'';
if (!empty($shuzu)) {
$update = "update `#@__products` SET id=''$id'',progress=''$progress'',
testDepartmentID=''$testDepartmentID'',
ProductTypeName = ''$ProductTypeName'',
ProductName = ''$ProductName'',
ProductModel = ''$ProductModel'',
ProductType = ''$ProductType'',
SendCompany=''$SendCompany'',
SendCompanyAddress = ''$SendCompanyAddress'',
SendCompanyZIP=''$SendCompanyZIP'',
SendCompanyPhone = ''$SendCompanyPhone'',
SendCompanyFax=''$SendCompanyFax'',
SendCompanyAtificialPerson = ''$SendCompanyAtificialPerson'',
ReportNo=''$ReportNo'',
ReportResult = ''$ReportResult'',
XKZNo=''$XKZNo'',
XKZValidDate_Begin = ''$XKZValidDate_Begin'',
XKZValidDate_End=''$XKZValidDate_End'',
deleted = ''$deleted''
WHERE ReportNo = ''$ReportNo'' ";
$dsql->ExecuteNoneQuery($update);
} else {
$inquery = "INSERT INTO `#@__products`(id,progress,testDepartmentID,ProductName,ProductModel,ProductType,ProductTypeName,SendCompany,SendCompanyAddress,SendCompanyZIP,SendCompanyPhone,SendCompanyFax,SendCompanyAtificialPerson,ReportNo,ReportResult,XKZNo,XKZValidDate_Begin,XKZValidDate_End,deleted)
VALUES (''$id'',''$progress'',''$testDepartmentID'',''$ProductName'',''$ProductModel'',''$ProductType'',''$ProductTypeName'',''$SendCompany'',''$SendCompanyAddress'',''$SendCompanyZIP'',''$SendCompanyPhone'',''$SendCompanyFax'',''$SendCompanyAtificialPerson'',''$ReportNo'',''$ReportResult'',''$XKZNo'',''$XKZValidDate_Begin'',''$XKZValidDate_End'',''$deleted'')";
$dsql->ExecuteNoneQuery($inquery);
}
}
}
mysql_query(''COMMIT'') or die(mysql_error());//执行事务
} else {
echo "更新产品数据失败!请使用“上传产品资料”功能更新数据!";
mysql_query(''ROLLBACK'') or die(mysql_error());//回滚事务
}
fclose($get);
fclose($fh);
3、定时任务
每周五上午10点更新数据 *(分) *(时) *(日) *(月) *(周)
[root@localhost]# crontab -l
00 10 * * 5 /home/****/***g.sh
05 10 * * 5 /usr/bin/curl http://www.****.net/****/***.php
经过测试更新成功!
Crontab定时任务 - 定时执行python脚本部署
Crontab命令格式:
* * * * * command
M H D m d command
M: 分(0-59)
H:时(0-23)
D:天(1-31)
m: 月(1-12)
d: 周(0-6) 0为星期日
* 代表取值范围内的数字
/ 代表"每"
- 代表从某个数字到某个数字
, 代表离散的取值(取值的列表)
Crontab脚本示例:
- 每分钟执行:
* * * * * python test.py
等价于*/1 * * * * python test.py
注意,每分钟的意思是指,每分钟的第1秒开始执行。 - 每4小时执行:
* */4 * * * python test.py
- 每周日执行:
* * * * 0 python test.py
- 每周六、周日执行:
* * * * 6,0 python test.py
- 每小时的第5分钟执行:
5 * * * * python test.py
Crontab脚本编辑
编辑定时任务:
crontab -e # a 进入编辑模式
加入:0 16 * * * python /opt/test.py
保存,退出即可。
当我们编辑完定时任务过后,记得重载一遍crond
systemctl reload crond.service
启动、停止、重启服务↓
systemctl start crond.service
systemctl stop crond.service
systemctl restart crond.service
设置开机自启:
systemctl enable crond # 开机自启动
crontab -e编辑生成的定时任务,任务记录文件位置
操作过程:
1.举例在a**用户下,创建了如下的定时任务
a**@standby spool]$ crontab -l
*/1 * * * * /home/a**/check_ps_if_exits.sh
备注:通过crontab -l就可以查看当前用户下的定时任务的设定。
2.通过在网上,找了该内容所在的具体的文件
/var/spool/cron目录下,具体的用户名文件中
3.使用a**用户查看该文件
[a**@standby spool]$ cd /var/spool/
You have new mail in /var/spool/mail/a**
[a**@standby spool]$ ls
anacron cron lpd mail plymouth postfix rhsm up2date
[a**@standby spool]$ cd cron/
-bash: cd: cron/: Permission denied
备注:发现权限是不够的,也就是普通过的用户无法进入到cron目录中。
4.使用root用户,查看该文件
[root@standby cron]# pwd
/var/spool/cron
[root@standby cron]# ls -l
total 4
-rw------- 1 a** oinstall 46 Mar 12 20:28 oracle
[root@standby cron]# cat oracle
*/1 * * * * /home/a**/check_ps_if_exits.sh
备注:通过root进入到cron目录中,查看a**文件,与crontab -l输出的内容是一致的。
小结:
linux操作系统中,crontab -l对应的文件是/var/spool/cron目录下的具体的用户名文件。
总结:1. 执行程序的文件的的权限,使其可以执行。2. 添加任务,编辑crontab命令了。如果用vi /etc/crontab命令的话,会列出root的已有任务列表,这是针对系统的服务。如果是想用当前用户执行,可以用命令crontab -e 来打开一个vi编辑自己的任务。
crontab -e
输入:*/5 * * * * python file_path/test.py >> /***/test.log 2>&1
每隔5分钟就,运行一次 file——path目录下的test.py,将日志输出值/***/test.log
中; 2>&1的意思是把错误的输出也输出到标准输出(2表示错误,2>表示错误输出,&表示等同于,1表示正确),因此如果运行出错也会把错误输出到之前定义的log中。
流程:
- 设置定时任务的命令: crontab -e (设定好任务后,不用重启crontab服务, 可以即可生效,不要设定任务的执行时间等于当前或者很临近的,否则可能造成命令不生效)
- 查看定时任务的命令: crontab -l
- 注意设定任务时的,用户; 执行时需要两者一致。
CentOS Linux使用crontab运行定时任务详解
安装crontab:
yum install crontabs
说明:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动:
chkconfig crond on
1,crontab命令
功能说明:设置计时器。
语 法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]
补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使 用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
-u<用户名称> 指定要设定计时器的用户名称。
2,crontab 格式
基本格式 :
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列 表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
# Use the hash sign to prefix a comment
# +―――――- minute (0 �C 59)
# | +――――- hour (0 �C 23)
# | | +―――- day of month (1 �C 31)
# | | | +――- month (1 �C 12)
# | | | | +―- day of week (0 �C 7) (Sunday=0 or 7)
# | | | | |
# * * * * * command to be executed
crontab文件的一些例子:
30 21 * * * /etc/init.d/Nginx restart
每晚的21:30重启 Nginx。
45 4 1,10,22 * * /etc/init.d/Nginx restart
每月1、 10、22日的4 : 45重启Nginx。
10 1 * * 6,0 /etc/init.d/Nginx restart
每周六、周日的1 : 10重启Nginx。
0,30 18-23 * * * /etc/init.d/Nginx restart
每天18 : 00至23 : 00之间每隔30分钟重启Nginx。
0 23 * * 6 /etc/init.d/Nginx restart
每星期六的11 : 00 pm重启Nginx。
* */1 * * * /etc/init.d/Nginx restart
每一小时重启Nginx
* 23-7/1 * * * /etc/init.d/Nginx restart
晚上11点到早上7点之间,每 隔一小时重启Nginx
0 11 4 * mon-wed /etc/init.d/Nginx restart
每月的4号与每周一到周三 的11点重启Nginx
0 4 1 jan * /etc/init.d/Nginx restart
一月一号的4点重启Nginx
*/30 * * * * /usr/sbin/ntpdate 210.72.145.20
每半小时同步一下时间
centos7 利用 crontab 执行 定时任务 计划任务
crond是什么?
crond 和crontab是不可分割的。crontab是一个命令,常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语chronos(χρόνος),原意是时间。
而crond正是它的守护进程。cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务。
所在位置:/var/spool/cron/root
linux定时任务分为两种
1)系统自身轮训的任务,比如定时(5天或者一周)备份/var/log/message等日志文件(系统的定时任务一般分为七段或者八段(centos6以下),以空格分割)
系统轮训的配置文件/etc/logrotate.conf (centos7以下的在/etc/cron.daily/logrotate/logrotate.conf )
2)用户执行的定时任务(用户的定时任务一般分为六段)
at适合执行一次就结束的调度任务
anacrontab 适合于非7*24小时开机的服务器准备的,是以天为单位执行的,不能指定以分钟的定时任务,在停机期间没有任务执行,可以开机时执行。
cron 服务是Linux的内置服务,但它不会开机自动启动,可以每分钟执行任务。可以用以下命令启动和停止服务:
/bin/systemctl start crond
/bin/systemctl stop crond
/bin/systemctl restart crond
/bin/systemctl reload crond
/bin/systemctl status crond
以上1-5行分别为启动、停止、重启服务和重新加载配置、查看服务状态
把cron设为在开机的时候自动启动
vi /etc/rc.local
/bin/systemctl start crond.service
crontab操作
crontab -u //设定某个用户的cron服务
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
crontab -i //打印提示,输入yes等确认信息/var/spool/cron/root (以用户命名的文件) 是所有默认存放定时任务的文件
/etc/cron.deny 该文件中所列出用户不允许使用crontab命令
/etc/cron.allow 该文件中所列出用户允许使用crontab命令,且优先级高于/etc/cron.deny/var/log/cron 该文件存放cron服务的日志
基本格式
# For details see man 4 crontabs
# Example of job deFinition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
定时任务的每段为:分,时,日,月,周,用户,命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令*:表示任意时间都,实际上就是“每”的意思。可以代表00-23小时或者00-12每月或者00-59分
-:表示区间,是一个范围,00 17-19 * * * cmd,就是每天17,18,19点的整点执行命令
,:是分割时段,30 3,19,21 * * * cmd,就是每天凌晨3和晚上19,21点的半点时刻执行命令
/n:表示分割,可以看成除法,*/5 * * * * cmd,每隔五分钟执行一次
基本使用
crontab -l -u root #查看root用户
0 */1 * * * command
0 */2 * * * command
crontab -e #编辑定时任务,在编写时会检查语法,而echo,或者vi编辑配置时不会检查(visudo也会检查语法)
0 */1 * * * command
0 */2 * * * commandcrontab文件的一些例子:
1)30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。
2)45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。
3)10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。
4)0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。最后一次的任务执行时间为23:305)0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。6)* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启apache(错误的)
*代表每分钟就执行一次,上面的语句的意思为每隔一小时的每分钟都在执行重启apache*/60 * * * * #每60分钟即每小时执行一次
*/105 * * * * #每105分钟执行一次7)* 23,00-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启apache(错误的)上面的定时任务的分钟为*号,代表每分钟都在执行,表示晚上23点和凌晨0-7点之间每隔一小时的每分钟都在再行重启apache
8)0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启apache(周和日尽量不要同时使用)
9)0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启apache
其他
root可以创建普通用户cron计划任务 crontab -e -u wgp
crond不能守护秒级定时任务,通常秒级的定时任务需要自己写shell脚本
#!/bin/bash
whith true
do
echo "hello world!" >>/tmp/log.txt
sleep 1
donesh test.sh & 放到后台执行
tail -f /tmp/log.txt 查看文件变化
在编辑里面要加上注释来区分是谁编写的
00 09,14 * * 6,0 /bin/bash /server/scripts/test.sh >/dev/null 2>&1
每周六,日的上午九点和下午14点执行test.sh,并把标准错误2和标准输出1定位到空文件
*/1 * * * * echo + >>/tmp/log.log >/dev/null 2>&1
注意:定时规则如果是命令在已经有了一个重定向符号>>,再加上一个重定向/dev/null 2>&1,是没有结果的
命令放定时任务里面,时间的%必需要转义\%
cron服务的日志文件在/var/log/cron文件下要注意环境变量给定时任务带来的影响,特别是与java服务相关的变量,定时任务只能识别很少的系统变量,同时也要避免不必要的命令打印输出
Quartz可以实现秒级任务
crond编辑三种定时方式
第一种:在/etc/crontab下设置,指定用户名的(不专业写法,一般不写在这里面)
1、vim命令进入/etc/crontab
2、在最后一行加上
59 23 * * * root /root/catalina.out.rm/rm_8080_8081_catalina.sh
如下说明:
3、重启crontab,使配置生效
/bin/systemctl restart crond.service
第二种:直接用crontab -e,不需要指定用户,如果是root权限,默认是root定时的
1、crontab -e进入
2、:wq退出保存
3、查看上面那个脚本是否有执行权限
4、还要看脚本里面的涉及的操作文件是否有权限
5、重启crontab,使配置生效
/bin/systemctl restart crond.service
第三种:直接写入/var/spool/cron/root(是用户名称)
1.vi /var/spool/cron/root
2.保存退出,crontab -l
3.tail -f /tmp/log.log
crontab定时任务执行不成功
1.查看定时任务有没有开启
2.符号*号是否弄懂,是否写错,代表每一分钟,小时,日,月,周
3.执行权限等等
4.执行的脚本或者写入文件的目录是否存在,是否是绝对路径
5.是否有系统变量,定时任务对系统变量的识别很少,比如写个tomcat定时关机,手工ok,但是脚本就是不执行
6.命令放定时任务里面,时间的%必需要转义\%
7.多看定时任务日志
CentOS和Linux使用crontab运行定时任务
CentOS和Linux使用crontab运行定时任务
更多:http://www.gongfuxiang.com/post/1d0500b2_656ff75安装crontab:
yum install crontabs
说明:
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动:
chkconfig –level 35 crond on
1,crontab命令
功能说明:设置计时器。
语 法:crontab [-u ][配置文件] 或crontab [-u ][-elr]
补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使 用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
-u 指定要设定计时器的用户名称。
2,crontab 格式
基本格式:
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者*/1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列 表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
# Use the hash sign to prefix a comment
# +—————- minute (0 – 59)
# | +————- hour (0 – 23)
# | | +———- day of month (1 – 31)
# | | | +——- month (1 – 12)
# | | | | +—- day of week (0 – 7) (Sunday=0 or 7)
# | | | | |
# * * * * * command to be executed
crontab文件的一些例子:
30 21 * * * /etc/init.d/nginx restart
每晚的21:30重启nginx。
45 4 1,10,22 * * /etc/init.d/nginx restart
每月1、10、22日的4 : 45重启nginx。
10 1 * * 6,0 /etc/init.d/nginx restart
每周六、周日的1 : 10重启nginx。
0,30 18-23 * * * /etc/init.d/nginx restart
每天18 : 00至23 : 00之间每隔30分钟重启nginx。
0 23 * * 6 /etc/init.d/nginx restart
每星期六的11 : 00 pm重启nginx。
* */1 * * * /etc/init.d/nginx restart
每一小时重启nginx
* 23-7/1 * * * /etc/init.d/nginx restart
晚上11点到早上7点之间,每 隔一小时重启nginx
0 11 4 * mon-wed /etc/init.d/nginx restart
每月的4号与每周一到周三 的11点重启nginx
0 4 1 jan * /etc/init.d/nginx restart
一月一号的4点重启nginx
*/30 * * * * /usr/sbin/ntpdate 210.72.145.20
每半小时同步一下时间
AD:真正免费,域名+虚机+企业邮箱=0元
关于PHP 、shell、crontab 执行定时任务和php定时任务执行脚本的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于 Crontab定时任务 - 定时执行python脚本部署、CentOS Linux使用crontab运行定时任务详解、centos7 利用 crontab 执行 定时任务 计划任务、CentOS和Linux使用crontab运行定时任务等相关知识的信息别忘了在本站进行查找喔。
本文标签: