自从用了ChatGPT,就已经告别百度广告搜索了

ChatGPT提问

添加每30天删除一次备份的文件,然后重新备份一次

ChatGPT的答案

要实现每30天删除一次备份的文件并重新备份,您可以在备份脚本中添加一个检查文件日期的步骤,并在超过30天时删除旧备份文件并创建新备份。以下是修改后的备份脚本:

#!/bin/bash
NOW=$(date +"%Y-%m-%d_%H-%M-%S")
SOURCE="/path/to/source/folder"
DESTINATION="/path/to/destination/folder"
FILENAME="backup_$NOW.tar.gz"
THIRTY_DAYS_AGO=$(date --date='30 days ago' +"%Y-%m-%d_%H-%M-%S")
OLD_FILE="$DESTINATION/backup_$THIRTY_DAYS_AGO.tar.gz"

# Check if old backup file exists and delete it
if [ -f "$OLD_FILE" ]; then
    rm "$OLD_FILE"
fi

# Create new backup file
tar -czf "$DESTINATION/$FILENAME" "$SOURCE"

这个脚本将每次运行时检查是否有30天前的备份文件,如果存在,则删除它。然后,它会创建一个新的备份文件,命名为当前日期和时间。要添加这个脚本到cronjob,您可以遵循之前的说明,将它添加到crontab文件中:

0 2 * * * /path/to/backup.sh

这将在每天的上午2点运行备份脚本。在每个备份任务中,如果已经超过30天,则旧备份文件将被删除,并创建一个新的备份文件。




知识共享许可协议本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

相关推荐

暂无评论

目录展开