使用zip命令放入压缩后的目录中

nic*_*ick 4 command-line backup zip

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

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

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

感谢所有帮助。谢谢

Joh*_*024 5

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

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

应避免对 shell 变量使用全部大写。重要的系统变量都是大写的,您不想意外地覆盖其中之一。因此,上面使用混合大小写Date而不是DATE

我会按照您的建议.zip作为后缀。这可以避免将来可能出现的混乱。另外,这里根本不需要创建Date变量:

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

最后,月日年格式的日期无法正确排序。yyyy-mm-dd 格式将按正确的顺序自然排序。这种通用格式的缩写是%F. 所以:

zip -r "/mnt/backups/backup.$(date +"%F").zip" /home/folder/folder
Run Code Online (Sandbox Code Playgroud)