首页 > 解决方案 > 如何调试无法在 cron 上运行的 shell 脚本?

问题描述

我在下面有一个 shell 脚本。这已经可以通过 sh start_script.sh

但我希望它能够使用 cron 作业自动工作。已经使用chmod +x使其可执行

下面是 shell 脚本和 cron 作业:

2 * * * * /home/glenn/projects/database_dump/backup/script_backupMongoDB.sh
#!/bin/sh
TIMESTAMP=`date +%F-%H%M%S`
FILENAME=configurator_`date +%m%d%y%H`_$TIMESTAMP.tar.gz
DEST=/home/glenn/projects/database_dump/backup
SERVER=127.0.0.1:27017
DBNAME=siaphaji-cms


DUMPFOLDER=$DEST/$DBNAME
DAYSTORETAINBACKUP="7"

# DUMP TO DEST FOLDER
mongodump -h $SERVER -d $DBNAME --out $DEST;

# COMPRESS THE DUMPFOLDER AND NAME IT FILENAME
tar -zcvf $FILENAME $DUMPFOLDER

# DELETE DUMP FOLDER
rm -rf $DUMPFOLDER

find $DEST -type f -name '*.tar.gz' -mtime +$DAYSTORETAINBACKUP -exec rm {} +

标签: linuxbashshellcron

解决方案


检查环境差异,尤其是每种情况下 PATH 变量的值(何时有效,何时无效)。


推荐阅读