我创建了一个Shell脚本,该脚本删除了var / cache文件夹的子文件夹。请检查以下脚本。
#!/bin/sh
now=$(date +"%Y-%m-%d %T")
if rm -rf var/cache/* ; then
echo "$now: Deleted"
else
echo "$now: problem"
fi
当我直接通过命令sh hello.sh
运行此Shell文件时,它运行正常。
但是当我使用crontab运行此文件时,它会在日志文件中创建一个条目,但不会删除var/cache/..
的子文件夹
请同时检查我的crontab。
* / 1 * * * * / bin / sh /www/html/wp/hello.sh >> /www/html/var/log/redis.flush.cron.log 2>&1
请建议我如何使用crontab运行该文件。
答案 0 :(得分:1)
尝试使用绝对路径而不是var/cache
。通过cron运行它时,它将以特定用户的身份运行a),并从该用户的主目录运行b)。这些之一或两者都可能给您造成问题。
代替此:
if rm -rf var/cache/* ; then
尝试这样的事情:
if rm -rf /full/path/to/var/cache/* ; then