Ubuntu16.04
バックアップフォルダにフォルダ構造をzipファイルとして保持しながら、すべての.txt、.cfg、および.iniファイルをバックアップしたいと思います。
すべてのタスクを実行するより簡単な方法があることを知っていますが、これが私が持っている方法です。
#!/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
しかし、それも動作しません。
ベストアンサー1
-r
これが再帰オプションがどのように機能するかです7z
。これは再帰パターン検索です。
7z a -r "$backupfilename" \*.ini \*.cfg \*.txt
7z
zipファイルを作成してください。
find
7zipがない場合は、複数の引数オプションも使用できます。
find suan \( -name \*.cfg -o -name \*.txt -o -name \*.ini \) \
-exec zip -r "$backupfilename" {} +