1.Linux下使用tar命令解压/压缩gz文件很简单,使用一行命令就可以搞定。
tar解压gz文件 tar zxvf filename.tar.gz
tar压缩gz文件 tar zcvf filename.tar.gz dirname
有时候,我们打包压缩某一个目录,而需要排除其中一个目录或文件。这时我们使用tar命令,增加--exclude
参数就能达到目的。
我们以Nginx为例,打包压缩时我们要排除nginx下的logs目录,命令如下:
tar zcvf filename.tar.gz --exclude=nginx/logs nginx
如果要排除多个目录,增加--exclude
即可,如下命令排除nginx下的logs和conf两个目录及文件temp.txt:
tar zcvf filename.tar.gz --exclude=nginx/logs --exclude=nginx/conf --exclude=nginx/temp.txt nginx
2.Linux下使用cp命令排除不需要的目录或文件比较麻烦,建议使用rsync
命令。
rsync命令和tar命令排除目录相似也是使用--exclude
参数。
rsync命令 -a
参数表示archive模式,-v
表示详细链模式输出,-z
表示传输文件时使用压缩传输的模式。
注意:--exclude
后面的路径不能为绝对路径,必须为相对路径才可以,否则出错。
我们以Apache为例,拷贝时我们要排除apache下的logs和conf目录,命令如下:
rsync -av --exclude=apache/logs --exclude=apache/conf apache backup