我每天在 Ubuntu/Linux 上使用命令 tar -cpvzf ~/Backup/backup_file_name.tar.gz directory_to_backup/
备份文件几次。我想创建一个脚本来自动创建文件名 - 检查:
~/Backup/backup_file_name_`date +"%Y-%m-%d"`_a.tar.gz
如果存在,如果存在则将“_a”替换为“_b”,然后检查直到 z 的所有字母。创建第一个不存在的备份文件。如果直到 z 的所有文件都存在,则将“_1”添加到文件名(带有“_z”)并检查所有数字,直到文件不存在。切勿更改现有文件,而仅创建新的备份文件。你知道如何创建这样的脚本吗?
最佳答案
你可以做类似的事情
for l in {a..z} ; do
[[ -f ~/Backup/backup_file_name_`date +"%Y-%m-%d"`_${l}.tar.gz ]] && continue
export backupname=-f ~/Backup/backup_file_name_`date +"%Y-%m-%d"`_${l}.tar.gz && break
done
# test if $backupname is properly set, what if `z` is used? I'm leaving this to you
# then backup as usual
tar -cpvzf $backupname directory_to_backup/
这会遍历字母,如果所需文件存在,则跳过设置 backupname
变量。
关于linux - 你知道我如何自动创建备份文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21699620/