我正在尝试备份具有以下结构的目录树:
/home/joe/projects/goodie/binary_program
/home/joe/projects/goodie/image.png
/home/joe/projects/goodie/sound.ogg
/home/joe/projects/goodie/license.txt
我想使用以下结构创建存档:
goodie-2015_04_09-15_34/binary_program
goodie-2015_04_09-15_34/image.png
goodie-2015_04_09-15_34/sound.ogg
goodie-2015_04_09-15_34/license.txt
我知道如何创建日期/时间戳标签,但我不知道如何在tar文件中实际创建树结构。任何想法?
答案 0 :(得分:0)
GNU tar有一个--transform选项,可以在将文件放入存档之前在文件名(或文件路径)上运行sed。
source=/home/joe/projects/goodie
name=goodie-2015_04_09-15_34
tar cvzf $name.tar.gz $source/* --transform "s@^$source@$name@"