我正在编写一个可以tar任何给定文件夹并将其放在我的home / bkp中的脚本。 该脚本将如下所示,
tar czvf /home/me/bkp/`basename $1`.tar.gz $1
现在好了,使用它。,
backup-script.sh /home/me/folder/sub/to-be-backed-up/
嗯,好。
现在,当我解开它时,它会创建home/me/folder/sub/to-be-backed-up/*files*
我只想要to-be-backed-up/*files*
在创建相对压缩它的tar文件时是否有任何选项?
答案 0 :(得分:3)
您可以使用tar的-C
选项,以便首先更改为给定目录。我经常使用将/..
附加到路径来获取父目录的技巧,以便您的脚本类似于:
# backupscript.sh <folder>
tar cvzf /home/me/bkp/`basename $1`.tar.gz -C $1/.. `basename $1`
或者您可以使用dirname
来改为首先更改到正确的目录