Linux crontab 定时任务

本文介绍 Linux 下 CronTab 的基本用法,包括命令选项、常见问题及解决方案。涉及如何新增、查看、删除定时任务,特别关注环境变量配置问题及其解决办法。

Linux crontab 定时任务

crontab命令选项:

     -u指定一个用户

     -l列出某个用户的任务计划

     -r删除某个用户的任务

     -e编辑某个用户的任务

新增:

crontab -e 然后添加相应的任务,wq存盘退出。

查看:

crontab -l //列出当前的所有调度任务

crontab有个问题,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到crontab中试图让它定期执行时就是会出错.

有时候会出现,定时任务在执行脚本时,识别不了环境变量的问题,例如:JAVA、SVN、MVN等

这就要求在脚本开头部分加入如下内容:

#!/bin/sh

. /etc/profile

. ~/.bash_profile

~表示当前用户的家目录,可能有些环境做了修改,找不到.bash_profile,根据实际情况处理吧,不行就注释掉

参考文章:

http://www.blogjava.net/freeman1984/archive/2010/09/23/332715.html

注意:执行时报的环境变量可能会与当前环境不一样!

手动执行脚本没问题,但是使用crontab执行时,会出现环境变量引发的问题

主要解决办法是:

1、在自己写的脚本中,开头部分添加

#!/bin/sh

. /etc/profile

#. ~/.bash_profile

2、对于使用到的相关环境变量写入到/etc/profile文件中

也就是说crontab执行前先配置好相关环境变量再执行

或者:

拷贝文件(以todos命令为例)

将安装目录下的todos文件(/mydir/re/tofrodos/src)拷贝到/bin目录下,并赋于相关权限

cp /mydir/re/tofrodos/src/todos /bin/

chmod 777 /bin/todos

有的定时任务在/etc/crontab中:  cat /etc/crontab

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值