如何在不保留目录结构的情况下tar一个目录?

我正在开发一个备份脚本,并想要打开一个文件目录:

tar czf ~/backup.tgz /home/username/drupal/sites/default/files 

这样会激化起来,但是当我解压缩生成的文件时,它包含了完整的文件结构:这些文件位于home/username/drupal/sites/default/files

有没有办法排除父目录,以便结果焦油只知道最后一个目录( files )?

 cd /home/username/drupal/sites/default/files tar czf ~/backup.tgz * 

使用–directory选项:

  tar czf ~/backup.tgz --directory="/home/username/drupal/sites/default files" . 

嗨,我有一个更好的解决scheme,当进入指定的目录是不可能的(Makefiles等)

 tar -cjvf files.tar.bz2 -C directory/contents/to/be/compressed . 

不要忘了最后的点(。)!

要从/home/myuser/workspace/zip_from//home/myuser/workspace/zip_to/源文件的目录结构中,对所有txt(* .txt)文件进行gunzip,请使用以下命令:

 tar -P -cvzf /home/myuser/workspace/zip_to/mydoc.tar.gz --directory="/home/myuser/workspace/zip_from/" *.txt 
 tar -Cczf ~/backup.tgz /home/username/drupal/sites/default/files 

-C为你做CD