Ubuntu 16.04
我想备份所有.txt,.cfg和.ini文件,同时将其文件夹结构保留为backups文件夹中的zip文件。
我知道有一个更简单的方法可以完成整个操作,但这就是我所拥有的。
#!/bin/bash
wdir="/home/files"
backup_dir="/home/files/backup"
allcfg=$(find suan -name '*.cfg')
alltxt=$(find suan -name '*.txt')
allini=$(find suan -name '*.ini')
timeStamp="$(date +%Y--%b-%d--%k:%M--%P)"
backupfilename="${backup_dir}/Backup-${timeStamp}.zip"
#-- set some arrays ...
backupfiles=( "$allcfg" "$alltxt" "$allini" )
cd "$wdir"
zip -r "$backupfilename" "$backupfiles"
因此,我可以看到它所归档文件的不错输出,但是当它到达压缩部分时会出错。
zip error: Nothing to do! (try: zip -r /home/files/backup/Backup-2018--Jul-04--21:37--pm.zip . -i suan/cfg/360controller.cfg
但这也不起作用。
这就是-r
递归选项的7z
工作方式,这是一种递归模式搜索。
7z a -r "$backupfilename" \*.ini \*.cfg \*.txt
7z
创建zip文件就好了。
find
如果您不知道7zip,也可以使用multi-arg选项。
find suan \( -name \*.cfg -o -name \*.txt -o -name \*.ini \) \
-exec zip -r "$backupfilename" {} +
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句