一部のバックアップスクリプトを作成したいが、一部のディレクトリを除外する必要があります。そのため、私は除外されたすべてのディレクトリをこのような配列に設定することにしました。
exclude[0] = '/home/user/test1'
exclude[1] = '/home/user/test2'
exclude[2] = '/home/user/test3'
この配列をtarコマンドの引数として提供できますか?
tar -zcvf $FILE $SOURCE --exclude=exclude
ベストアンサー1
そしてzsh
:
exclude=(
/home/user/test1
/home/user/test2
/home/user/test3
)
tar --exclude=$^exclude -zcvf $FILE $SOURCE
この$^exclude
構文を使用すると、上記の内容を次に拡張できます。
tar --exclude=/home/user/test1 --exclude=/home/user/test2 \
--exclude=/home/user/test3 -zcvf the-file the-source
rc
デフォルトでは、およびes
シェルはfish
配列を使用してこれを実行するため、これらのシェルでは次のことができます。
tar --exclude=$exclude -zcvf $FILE $SOURCE
set exclude /home/user/test1 /home/user/test2 /home/user/test3
(配列を定義するために使用されますfish
)