当前位置: 技术问答>linux和unix
crontab中执行bash脚本问题
来源: 互联网 发布时间:2016-07-13
本文导语: root登录 root目录下有个bash文件test.pp 属性为 755 #--------------------- crontab -e */1 * * * * . /test.pp #--------------------- test.pp echo 'date' this is test.pp >> /home/1.log # -------------------- mail得到的结果: X-Cron-Env: X-Cron-Env: X-...
root登录
root目录下有个bash文件test.pp 属性为 755
#---------------------
crontab -e
*/1 * * * * . /test.pp
#---------------------
test.pp
echo 'date' this is test.pp >> /home/1.log
# --------------------
mail得到的结果:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
date.......
: No such file or directory;
#---------------------
看了不少帖子,说环境变量有问题。可是始终搞不定。
先谢了!!!
root目录下有个bash文件test.pp 属性为 755
#---------------------
crontab -e
*/1 * * * * . /test.pp
#---------------------
test.pp
echo 'date' this is test.pp >> /home/1.log
# --------------------
mail得到的结果:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
X-Cron-Env:
date.......
: No such file or directory;
#---------------------
看了不少帖子,说环境变量有问题。可是始终搞不定。
先谢了!!!
|
没有看懂想问什么,*/1 * * * * . /test.pp 那行最后一个应该改为 /root/test.pp 吧。
首先你没有写明在哪个目录下面,其次也.与/之间有空格。
首先你没有写明在哪个目录下面,其次也.与/之间有空格。
|
test.pp是可以运行的,但是在这里面你要加上环境变量就可以了。crontab会不识别这个test.pp是什么东东
|
你在根目录下运行./test.pp的意思是执行当前目录下的test.pp文件,而在cron下不能这么做,要写绝对路径,
如果这个文件就是在根目录下的话就直接写/test.pp,加点是没用的,
而且你写的是. /test.pp,这样的话cron就会把这个点认为是用户,你有.这个用户??
如果这个文件就是在根目录下的话就直接写/test.pp,加点是没用的,
而且你写的是. /test.pp,这样的话cron就会把这个点认为是用户,你有.这个用户??
|
注意那个date引起来的不是单引号, 而是反引号.
另外,如果不是上述问题引起的, 那就是你系统里的date不是在标准路径下, 你可以用which date或whereis date查找绝对路径的date命令, 在crontab里用绝对路径.
另外,如果不是上述问题引起的, 那就是你系统里的date不是在标准路径下, 你可以用which date或whereis date查找绝对路径的date命令, 在crontab里用绝对路径.
|
echo "`date` this is test.pp" >> /home/1.log