crontab执行PHP】的更多相关文章

shell脚本手工执行结果正确,但是放到crontab中执行,结果却是错误的. 脚本执行的路径肯定是没有问题的,比较怀疑crontab执行和手工执行两者的环境不同,在手工执行脚本时,通过ssh登录到服务器,其间会自动执行root目录下的.bash_profile(注意前面有一个点,此文件是隐藏文件),为此,在shell脚本的最前面加上下面语句:source ~/.bash_profile,再通过crontab来执行   crontab -e   SHELL=/bin/sh PATH=/usr/l…
crontab执行脚本中文乱码,手动执行没有问题 产生原因:       这是因为Unix/Linux下使用crontab时的运行环境已经不是用户环境了,因此原本用户下的一些环境变量的设置就失效了.例如原来用户环境变量设置的是GB2312,但是使用crontab运行时的环境变量就可能是ISO8859-1.   解决方法:       首先执行命令echo $LANG,假设输出是en_US.UTF-8       然后在脚本中增加一行export LANG=en_US.UTF-8…
http://blog.chinaunix.net/uid-7552018-id-182133.html crontab执行php脚本 http://www.jb51.net/article/29136.htm   [root@jiangbo ~]# crontab -u root -l no crontab for root [root@jiangbo ~]# crontab -u root -e no crontab for root - using an empty one crontab…
一.我们常常碰到在shell下执行某个命令能够成功,比如执行一个java程序: java -jar /home/opscoder/topo-audit.jar,但是在crontab下执行会失败. cornjob为 0 10 * * * java -jar /home/opscoder/topo-audit.jar: 即每天10点去执行这个jar中的main方法 二.查找失败的原因,即查看crotab的执行log, 有如下3种方法,我所用的是ubantu的机器,使用的是方法1. mail任务(Li…
Crontab 执行时没有环境变量! Crontab 执行时没有环境变量! Crontab 执行时没有环境变量! 重要的事情说三遍,浪费我半天时间去找问题!! 非系统默认工具,执行时候需要加全路径!!…
用crontab执行shell把top命令按日期追加到文件 详细图文解说请到本人原创百度经验http://jingyan.baidu.com/article/3052f5a1daf11197f21f8648.html 解决crontab定时输出top不执行办法 top -n 1不能在 crontab中使用,要加一个参数top -b -n 1 需求:在linux服务器用crontab执行shell基本把top命令结果按日期追加到文件. 常见问题:1.直接执行命令可以正常,放到shell脚本里面执行…
实际生产案例 生产机房自建PPTP客户端通过拨号连接到生产机房,但是一旦客户端网络是意外断线再重新拨号 会产生IP冲突,于是写了一个脚本监控PPTP的IP是否有多个(一般冲突以后会生成2个IP) #!/bin/bash #author Liuyueming . /etc/profile #开始没有加这个环境变量 for i in {10..35} do n=`ifconfig|grep 10.13.0.${i}|wc -l` #循环取ip并计数 # echo `ifconfig|grep 10.…
在stackoverflow上看到一个问题:http://stackoverflow.com/questions/14015543/crontab-php-wget-or-curl 有三种通过crontab执行php脚本的写法: * * * * * /usr/bin/php /var/www/project/cron.php * * * * * /usr/bin/curl --silent --compressed http://localhost/project/cron.php * * *…
实例一 test.sh文件 echo `date`>test.log 配置crontab 设置 */1 * * * * sh /data/test.sh 在/data/目录下,未找到test.log文件,重启了crontab服务,service cronb restart,发现还是不行. 在网上找资料,怀疑是相对路径的问题,然后,在home目录下,cd ~,发现了test.log. 转摘资料: crontab执行java程序的问题: 一 crontab使用注意: crontab -l查看该用户的…
Sep 17 19:01:01 d run-parts(/etc/cron.hourly)[8452]: finished 0anacronSep 17 19:10:01 d CROND[9059]: (root) CMD (cd /root/tools/trunk/plugins/personas; python sync_db.py &> /dev/null)Sep 17 19:10:01 d CROND[9060]: (root) CMD (/usr/lib64/sa/sa1 1 1)…
在java.ext.dirs中使用环境变量导致crontab执行不成功的问题及解决 Table of Contents 1. java.ext.dirs的使用和环境变量 2. 问题:在crontab中执行失败 3. 解决办法 1 java.ext.dirs的使用和环境变量 在一个小项目中,出于简化需要,没有划分不同的模块,而是视为一个模块,打成一个jar包,通过java -cp 类名的方式进行不同的调用. 因为引用的jar包比较多,所以使用了java.ext.dirs进行简化处理.为了保证jav…
背景:huskiesir最近用公司给分配的账户写了脚本去检测某应用状态并发送到企业邮箱,写完脚本之后去执行了一下,发现效果还不错,在邮箱显示效果如下: 10.11.116.6  检查结果OK,检查时间:2018-11-16_15:26:04 但是呢,经过crontab自动执行以后才发现,显示效果是这样的: 检查结果OK,检查时间:2018-11-16_13:17:05 咦,我的ip地址呢,这个问题搞得huskiesir一脸懵逼,为嘛经过crontab自动执行就出问题了?ok,接下来看看我写的脚本…
php利用crontab执行 5分钟发邮件给用户 一开始设想用shell_exec执行sh 运行 crontab但发现并不可取 因为没办法传变量 (因为要传963529987@qq.com)所以决定采用1 发邮件 直接insert into到数据库 2 shell里面写个定时器 php代码就是每秒读取数据库的变化 来决定执行 (只要有1个字段来判断是否执行过就行了) 如果10分钟 就update字段 应该发的时间 这个时候每秒判断有没有到这个时间就行了 上面是发一次 下面说每分钟发一次的写法 这…
一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调…
转:https://www.centos.bz/2011/03/auto-run-task-crontab/ 我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳定可靠地触发PHP执行任务.下面介绍Crontab的两种方法. 一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样,使用PHP程序来调用PHP脚本.…
阿里云CentOS收不到邮件 在crontab里配置执行脚本,脚本用来执行java程序,死活不执行.单独执行脚本可以运行. 查看crontab的日志文件,/var/log/cron,发现没有收到cron执行的mail,说: " fatal: parameter inet_interfaces: no local interface found for ::1" 猜测是网卡的问题,百度之后发现是ipv6的鬼.修改方法: 修改/etc/postfix/main.cf,注释掉 inet_in…
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳定可靠地触发PHP执行任务. 下面介绍Crontab的两种方法. 一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本. 每一小时执行myscript.php如下: # crontab -e 00 *…
现在越来越喜欢用linux了,程序当中也去掉了很多触发性判断,改用了借用linux的crontab的特性来进行,这样程序效率确实是高了很多. 比如我们每月1号清空月点击,比如每天凌晨统计上一天的访问报表. 但是crontab的传参是个问题,因为命令行下执行php,是不走apache等这类东西的,没有什么http协议,所有get,post传参数根本不起作用,并且还会报错,如下: pakey@ubuntu:~$ php test.php?aaa=bbbCould not open input fil…
今天在写服务器的perl脚本的时候,在完成一版脚本打算通过crontab来测试一下呢,因为直接执行脚本文件是没有问题的,但是当配置到crontab定期执行时就会出现问题,到了指定的时间了,但是脚本文件没有被执行. 后来通过goole搜索到了原因,因为我在测试的时候是直接修改了linux的系统时间,例如:date -s "2016-05-09 01:29:30“ ,因为我的脚本设置在了凌晨1点30分执行,(30  1  *  *  *  /usr/bin/perl  /www/bin/123.pl…
今天遇到个问题,在定时备份时 去查看备份文件,发现大小竟然为0,执行 备份sh文件备份, 备份的sql文件大小正常.试了几种办法. 最终解决办法: 问题原因: 因为我设置的环境变量 就直接在sh中 使用 mysqldump xxx 备份.  在其他目录可以 但是在定时任务中 它是在/etc/crontab中执行 解决办法: 将mysqldum 设置为绝对路径  mysql安装目录/bin/mysqldum  xxxx.…
很多时候我们会遇见这种情况,我们千辛万苦写了一个脚本,经过测试,一切正常,然后放到了crontab里面执行,结果,不管怎么配置,就是执行不正常. 结果发现环境问题,居然是这个异常的元凶. 我们先在我们的服务器上执行env命令,出现如下: XDG_VTNR= XDG_SESSION_ID= HOSTNAME=bogon IMSETTINGS_INTEGRATE_DESKTOP=yes GPG_AGENT_INFO=/run/user//keyring/gpg:: VTE_VERSION= TERM…
转载:https://www.cnblogs.com/xiaoluo501395377/archive/2013/04/06/3002602.html http://yangqijun.iteye.com/blog/1173016 cron服务是Linux的内置服务,但它不会开机自动启动.可以用以下命令启动和停止服务: /sbin/service crond start //启动 /sbin/service crond stop //停止 /sbin/service crond restart…
1.yii2中的console <?php /** * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */ namespace app\commands; use yii\console\Controller; /** * This command echoes the first…
 报错现象:在shell下执行node没有任何问题,但crontab自动运行就会报错. 原因:node的安装路径:/root/.nvm/versions/node/v6.7.0/bin/node Shell环境PATH变量中已配置,因此在shell下可以执行. 但要知道,我们这是在crontab下定时运行,因此需要检查crontab的环境变量. [root@WEB4 node]# vim /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin…
实验目的:每分钟往某个文件写数据(crontab最小单位是分钟),具体shell命令我是放在一个文件里的.先创建两个空文件:/tmp/a.txt(目标文件)和/tmp/a.sh(脚本文件). 命令如下: [root@localhost tmp]# touch a.txt a.sh 不能急着去编写cron表达式,先确定自己的脚本命令是否能够成功执行. 命令如下: [root@localhost tmp]# /usr/bin/echo "test" >> /tmp/a.txt…
在linux下面使用命令crontab -e  编辑任务: [adv@localhost]$ crontab -e 之后开始编辑任务 * * * * * cd /home/adv/work/cutter_log/ && bash ./cutlog_minute.sh >> ./log/run.log 2>&1 以上命令的意思是每分钟切换到cutter_log目录下执行cutlog_minute.sh脚本,并将脚本输出的内容存到目录log下的run.log文件 之后…
如果脚本在终端执行正常,而在crontab里执行失败, 一般跟root用户无关,而是和系统变量有关,一般加上绝对路径执行java命令即可: /usr/java/jdk/bin/java xxx.jar…
1.相对路径导致   2.环境变量问题,py脚本首行应指定python路径,不能用软链接   3.python3.3是默认utf-8,需要 &&脚本   最好使用crontab -e ,这样如果任务执行有问题,会有mail通知,可以帮助查找原因.如果直接编辑/etc/crontab则没有通知.…
在工作中我们经常会写一个python脚本,然后想通过定时任务去执行,这时我们会想到crontab. 通过 crontab -e去设置crontab 例如:0     0       *       *       *     python /data/webapps/cmdb.import.api/routine_analysis_halog.py 这时如果你的脚本中会有涉及读取配置文件或者读写文件的动作,一般你的定时任务都不会执行. 因为你的脚本在执行时,由于是通过crontab去执行的,他的…
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳定可靠地触发PHP执行任务.下面介绍Crontab的两种方法. 一.在Crontab中使用PHP执行脚本 就像在Crontab中调用普通的shell脚本一样(具体Crontab用法),使用PHP程序来调用PHP脚本.每一小时执行myscript.php如下: # crontab -e 00 * *…