我正在尝试使用crontab作为不同的用户运行(由于所需的权限)来创建日志文件,但我的脚本似乎没有执行
我目前以admin
身份登录,我想将脚本作为www-data
运行,以便编辑我正在使用的crontab
sudo crontab -u www-data -e
然后输入
* * * * * /path/to/sh/mkLogFile.sh
mkLogFile.sh是由www-data
拥有的文件 -rwxrw-r-- 1 www-data www-data 58 May 22 10:08 mkLogFile.sh
及其内容
tday=`date +"%y%m%d%h%m"
`touch /path/to/log/$tday.log`
在crontab中,我还尝试了以下内容,而没有先创建文件
* * * * * /path/to/file/populateLogs >/path/to/log`date +%y%d%m`.log
这些都无法创建文件或创建和填充文件。
如果我使用
运行其中任何一项 sudo -u www-data ./mkLogFile.sh
或来自crontab的任何其他命令,但不是从crontab运行时。其他脚本以这种方式运行只是没有一个文件。
log
目录也归www-data
所有,并具有完全权限。
drwxrwxrwx 2 www-data www-data 4096 May 22 10:40 log
有什么明显的事情我做错了吗?或者有更好的方法吗?