我的問題是,cronjob似乎運行良好,但沒有在.sh文件中正確執行代碼,請參閱下面的詳細信息。Cronjob - 運行腳本和Python
我鍵入crontab -e命令,彈出的cron: 在該文件中:
30 08 * * 1-5 /home/user/path/backup.sh
45 08 * * 1-5 /home/user/path/runscript.sh >> /home/user/cronlog.log 2>&1
backup.sh:
#!/bin/sh
if [ -e "NEW_BACKUP.sql.gz" ]
then
mv "NEW_BACKUP.sql.gz" "OLD_BACKUP.sql.gz"
fi
mysqldump -u username -ppassword db --max_allowed_packet=99M | gzip -9c > NEW_BACKUP.sql.gz
runscript.sh:
#!/bin/sh
python /home/user/path/uber_sync.py
uber_sync .py:
import keyword_sync
import target_milestone_sync
print "Starting Sync"
keyword_sync.sync()
print "Keyword Synced"
target_milestone_sync.sync()
print "Milestone Synced"
print "Finished Sync"
問題是,它似乎在uber_sync中執行打印語句,但實際上並沒有從導入語句執行代碼......任何想法?
還要注意的是keyword_sync和target_milestone_sync位於作爲uber_sync,即/ home/user中/路徑
感謝您的幫助同一目錄中。
那麼,結局在'/ home/user/cronlog.log'中?任何堆棧跟蹤? - 哦,並且不知道'sync()'是做什麼的,這很難說出什麼地方會出錯。 – mata
檢查PATH。 – Daenyth