簡體   English   中英

crontab沒有執行有效的Shell腳本

[英]crontab not executing a working shell script

我有以下格式的腳本:


#!/斌/慶典

cd / abc / def / user1 / test

導出NIMBUS_ENV_FILE = / abc / def / user1 / test / nimbus_env

main / vdnet -c yaml / config.yaml -t ABC。 *。


我的腳本從shell運行時可以完美執行。我想每天執行此腳本,因此我通過將crontab -e編輯為來設置了cron作業:


PATH =的/ usr / bin中:/ usr / sbin目錄:.

00 12 * * * /home/test.sh> /home/testCronLog.log 2>&1


但是,cron作業已運行,但未按預期運行腳本,並出現以下錯誤:

main / vdnet:第2行:readlink:找不到命令

dirname:缺少操作數

嘗試使用“ dirname --help”以獲取更多信息。

main / vdnet:第3行:/../main/environment:無此類文件或目錄

main / vdnet:第8行:/../scripts/nimbus/setup:沒有此類文件或目錄

main / vdnet:第14行:/../main/vdNet.pl:沒有此類文件或目錄


當我手動執行腳本並且無法找出錯誤的原因時,我沒有得到這些錯誤。腳本的所有者與crontab用戶相同。 請幫忙!!!

該問題現已解決。 我在運行命令main / vdnet之前將路徑添加到了腳本中:export PATH = ...

謝謝

當您使用某些命令或某物或腳本時,最好提供完整的路徑
所以在腳本中給出main/vdnet完整路徑

嘗試將在test.sh中調用vdnet行的行更改為:

main/vdnet -c /abc/def/user1/testyaml/config.yaml -t ABC...*

我認為您的問題是,盡管test.sh可以從crontab完美運行,但main / vdnet卻不能,這是因為您提供的引用作為-c選項的參數需要完整路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM