我有一个简单的脚本文件,可以将所有文件复制到远程服务器,然后将它们全部删除。我可以通过“用户”手动运行此脚本,当我添加到 crontab(用户)时,第一部分 scp 工作正常,但 rm 部分总是失败。 我想知道我遗漏了什么或设置不正确,有人可以帮我解决这个问题吗?
提前致谢
/home/user/bin/test.sh
#!/bin/bash
scp -v -r /var/spool/asterisk/monitor test@xx.xx.xx.xx:/home/test/audio&&sudo rm -f /var/spool/asterisk/monitor/*
/var/spool/asterisk/monitor 的访问权限
drwxr-xr-x. 1 root root 532 Sep 06 11:14 monitor
crontab - 用户]
* */1 * * * bash /home/user/bin/test.sh
最佳答案
试试这个,如果 sudo 不需要密码(这是可能的),它将起作用
scp -v -r /var/spool/asterisk/monitor test@xx.xx.xx.xx:/home/test/audio && ssh test@xx.xx.xx.xx "sudo rm -f /var/spool/asterisk/monitor/*"
关于Linux 脚本无法通过 crontab 删除文件,但它可以手动工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39349273/