焦油 - 排除$ VAR

时间:2017-09-19 10:29:05

标签: linux bash sh tar

我经过多次尝试后,在互联网上阅读了大量内容,但我无法找到解决问题的方法。

我尝试编写备份脚本并且我有一个命令来tar文件夹,但是--exclude拒绝工作。

文件夹结构如下:

Folder1/
---- Folder2
--------- Folder3
-------------- Folder4 -> ../../Folder1 (Symlink)

想法是创建Folder2的tarball,包括使用符号链接(Folder4)从Folder1中的文件,但不包括符号链接以避免循环。所以在bash文件中我有这个:

ln -s $Folder1 "$Folder2/$Folder3/Folder4"

EXCLUDE="'$Folder2/$Folder3/Folder4/$Folder2'"
tar --exclude=$EXCLUDE -cJhv backups | gpg2 --passphrase 'foo-bar' | ssh somwhere@space "mkdir -p /$BACKUP_NAME/finished-backups ; cat >  /$BACKUP_NAME/finished-backups/$BACKUP_FILE_NAME_AND_PATH.gpg"

bash文件会生成这个,如果我直接在终端上运行就像魅力一样:

tar -cJhv --exclude="Folder2/Folder3/Folder4/Folder2" Folder2  | gpg2 --batch  --passphrase "foo-bar" | ssh root@somewhere "cat > /root/test_stream/result.tar.xz.gpg"

但是当我在文件上运行它时,tar不会排除Symlink文件夹。

干杯。

0 个答案:

没有答案