使用crontab定时脚本进行文件备份,然后删除超期文件。但备份命令执行后,删除命令没有执行或执行失败

问题遇到的现象和发生背景

使用crontab定时脚本进行文件备份,然后删除超期文件。但备份命令执行后,删除命令没有执行或执行失败

问题相关代码,请勿粘贴截图

crontab -l
0 1 * * * /usr/local/backup.sh

删除命令脚本(备份和删除的命令都是在backup.sh一个脚本里面,下面只列举了删除命令。可以理解这个脚本只执行了一半)
find /backup/ -mtime +1 -delete

运行结果及报错内容

没有删除超期文件,但是直接使用find /backup/ -mtime +1 -delete是可以的

我的解答思路和尝试过的方法

在任务脚本里使用find /data/backup/ -mtime +1 > /usr/local/a.txt将待删除目录输出到其他文件,也是空的
在脚本文件里增加
尝试在脚本中添加下列语句,都不行
#!/bin/bash -il
chmod -R 777 /backup/

先看看日志有没有报错

linux中默认情况下,crontab中执行的日志写在/var/log下

脚本没有.可以执行吗???我不太清楚,应该是不行吧
改成

0 1 * * * ./usr/local/backup.sh

试试

或者使用sh

0 1 * * * sh /usr/local/backup.sh

你将删除文件的命令,都放到backup脚本里面。
例如我以前写的备份脚本,最后的删除命令:
#删除30天以上的备份文件
find $BACKUP_DIR -type f -mtime +30 -name "*.sql" -exec rm -rf {} \;