linux 打包命令 tar 的几个用法

想问下,怎么向已打包的 tar.gz 再添加文件,另外,如何让 tar 不打包某个文件
比如我现在在 workspace 目录下执行:
ls -a --color=none | grep -v '^\.*$' | xargs tar -zcvf Workspace.tar.gz
将 workspace 目录下所有文件全部打包
但是我不想打包 workspace/code/tmp 这个目录,如何修改上面的命令
或者在已打包的 Workspace.tar.gz 中再用命令去掉这个目录也行

请不要不假思索的复制答案过来,看不懂问题的也请不要回答,谢谢!

1)tar -r 可以append file to tared_package.
tar -rf tared_package 添加文件
2)不打包目录用
ls -a --color=none | grep -v '^\.*$' | xargs tar -zcvf Workspace.tar.gz --exclude 目录名
3) 删除用 tar --delete -f tared_package 删除文件名
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-01-02
tar zcf workspace.tar.gz workspace/ --exclude workspace/code/temp
当然如果你exclude 文件比较 多的话,建议把不想要的文件/文件夹放到一个文件里比如 exclude_file
这时执行 tar zcf xxx.tar.gz xx/ --exclude-from xx/exclude_file
相似回答