使用 zip 命令将压缩包放入目录中

使用 zip 命令将压缩包放入目录中

我正在创建备份脚本并具有以下内容:

DATE=$(date +"%m-%d-%Y")
zip -r backup.$DATE /home/folder/folder

首先为名称创建日期变量,我猜想 /home/folder/folder 是要备份的目录,其中包含所有其他相关目录和文件。我需要这样做,以便在完成后将 zip 放在 /mnt/backups 中。

非常感谢您的帮助。谢谢

答案1

要将 zip 文件放入正确的目录:

Date=$(date +"%m-%d-%Y")
zip -r "/mnt/backups/backup.$Date" /home/folder/folder

应避免对 shell 变量使用全部大写字母。重要的系统变量全部大写,您不会想意外覆盖其中一个。因此,上述代码使用大小写混合,Date而不是DATE

我会像您建议的那样,将其作为后缀。这样可以避免将来可能出现的混淆。此外,这里根本.zip不需要创建变量:Date

zip -r "/mnt/backups/backup.$(date +"%m-%d-%Y").zip" /home/folder/folder

最后,月日年格式的日期排序不正确。yyyy-mm-dd 格式会自然地按正确顺序排序。这种常见格式的缩写是%F。因此:

zip -r "/mnt/backups/backup.$(date +"%F").zip" /home/folder/folder

相关内容