例如:
以tomcat 为例,打包的时候要排除 tomcat/logs 目录,命令如下:
tar -zcvf tomcat.tar.gz --exclude=tomcat/logs tomcat
如果要排除多个目录,增加 --exclude 即可,如下命令排除logs和libs两个目录及文件xiaoshan.txt:
tar -zcvf tomcat.tar.gz --exclude=tomcat/logs --exclude=tomcat/libs --exclude=tomcat/xiaoshan.txt tomcat
这里要说一下注意事项:
linux在使用tab键的时候会对目录名称自动补全,这很方便,也比较常用。
如输入 tomcat/lo 的时候按tab键,命令行会自动生成 tomcat/logs/ ,对于目录,最后会多一个 “/”。这里大家要注意的时候,在使用tar 的--exclude 命令排除打包的时候,不能加“/”,否则还是会把logs目录以及其下的文件打包进去。
错误写法:
tar -zcvf tomcat.tar.gz --exclude=tomcat/logs/ --exclude=tomcat/libs/ tomcat
正确写法:
tar -zcvf tomcat.tar.gz --exclude=tomcat/logs --exclude=tomcat/libs tomcat
在Linux下直接使用命令:tar jcvf file.tar.bz files ,压缩files目录时,如果当前files路径是在/home/www/files下,压缩后的file.tar.bz2会将包含files的绝对路径;
tar jcvf file.tar.bz2 -C /home/www files
这样压缩后,就是可以得当一个相对路径的压缩包了,直接排除掉/home/www路径不压缩了。这个方法适合于某些文件导出,但并不希望用户知道服务器上文件存放路径信息的需求。
Tar在Unix/Linux世界虽然流行,但在终端用户这边,zip格式还是绝对的主流,所以,有可能zip格式更有用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)