linux 的tar 命令打包制定目录下的所有文件,却不想包含目录。

作者&投稿:晁耐 (若有异议请与网页底部的电邮联系)
linux下面tar打包, 排除某个特定的目录( 只对一个目录操作, 不对其他目录操作)~

[boomer@www test]$ pwd/home/boomer/tmp/test[boomer@www test]$ ls -R.:aa bb cc dd./aa:1.txct 1.txt./bb:2.txt dd./bb/dd:5.tx 5.txt./cc:3.txt dd./cc/dd:4.txt./dd:6.txt[boomer@www test]$ cat > include.mydirs aa> bb> cc> EOF[boomer@www test]$ tar cvzf temp.tar.gz `cat include.mydirs`aa/aa/1.txctaa/1.txtbb/bb/dd/bb/dd/5.txbb/dd/5.txtbb/2.txtcc/cc/dd/cc/dd/4.txtcc/3.txt[boomer@www test]$

用户执行下面的命令就可以实现,但是目录后面不要加“/”:
#tar zcf opt.tgz /opt --exclude /opt/tmp --exclude /opt/mail
更多知识点请查看《linux就该这么学》。

命令为:tar zcvf /test/data.tar.gz -C /some/files .

另一种方法,建立一个文件excludefile,写:

/data/web/aaa

/data/web/bbb

tar命令:

tar cvzf data.tar.gz --exclude-from /data/excludefile  /data/web/

扩展资料:

注意事项

tar --null -P -czf /tmp/archive.tar.gz --files-from=files.lst

files.lst是要打包的文件列表

tar 中--exclude的用法:

tar czvf oracle.tar.gz oracle --exclude  oracle/oradata --exclude oracle/admin/shvoip --exclude oracle/doc

使用tar进行排除一个目录的备份

打包/home这个目录,/home/123/是不想打包的目录。

tar cvf my.bak.tar /home --exclude /home/123

tar exclude

Published at February 20, 2008 in C/C++.

tar 的exclude 要放在最尾端才行:

tar jcvf WLANIntercept_20080220.tar.bz WLANIntercept/ –exclude=Debug



1、进入/some/file/
2、tar -czvf /test/data.tar.gz */ 中间是你打包的文件名,最后“*/”表示将/some/file/中的文件全部打包

tar zcvf /test/data.tar.gz -C /some/files .

注意最后那个点号 "." ,别漏了

那你只有打包的时候进入/some/file/目录。
tar zcf /test/data.tar.gz ./*

先进到要打包的目录
然后 tar zcfv * .
ok