您的位置:首页 > 运维架构 > Linux

linux系统crontab计划中执行可执行程序例如./execfile

2014-01-10 09:26 260 查看
常见的计划任务有俩种:在计划任务中执行shell脚本 ;在计划任务中执行系统命令;

很多时候需要在计划任务中执行我们自己的可执行程序,

0 1-5/1 * * * ./home/sa/execfile 这样直接在计划任务中cmd位置添加,执行失败,

根据自己遇到的问题,把解决方法和大家分享一下,如果您有更好、更简洁的方法,请一定回复:

1.编写shell脚本exec.sh,脚本内容可如下:

#!/bin/bash

cd /home/sa

./execfile

2.编写shell脚本shexec.sh,这个脚本的作用是调用exec.sh,脚本内容可以如下:

su - username -c “sh /home/sa/exec.sh” #username为普通用户,也就是exec.sh的属主用户

3.crontab -e 命令编辑计划任务,计划任务内容如下:

0 1-5/1 * * * sh /home/sa/shexec.sh(仅供参考,计划任务执行时间根据需求修改)

这样正常情况下,计划任务就可以执行了,但在测试中发现,程序在指定时间没能正确执行,自认为是服务器时间延迟的原因(因为过了一段时间后查看日志,发现程序在指定时间正确执行)

看起来有点繁琐,限于能力,只能这样解决了,如果大家有更好的解决方法,请一定回复
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: