一般直接用tar命令打包很简单,直接使用 tar -zcvf test.tar.gz test 即可。
在很多时候,我们要对某一个目录打包,而这个目录下有几十个子目录和子文件,我们需要在打包的时候排除其中1、2个目录或文件。
这时候我们在用tar命令打包的时候,增加参数 --exclude 就能达到目的。
例如:
我们以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
* 排除某一个后缀的文件
tar -zcvf backup.tar.gz --exclude='*.log' --exclude='*.png' --exclude='*.jpg' --exclude='*.jpeg' /www/wwwroot/project
* rsync (远程 -->本地)
rsync -ra --progress --exclude='*.log' --exclude='*.png' --exclude='*.jpg' --exclude='*.tar.gz' --exclude='*.zip' --exclude='*.jpeg' --exclude='*.gif' --exclude='*.json' root@129.226.126.194:/www/wwwroot/remote_project_dir /Users/sui/Documents
ssh端口不是默认22端口: rsync -ra --progress --exclude='*.log' --exclude='*.png' --exclude='*.jpg' --exclude='*.jpeg' --exclude='*.gif' --exclude='*.json' -e 'ssh -p 22000' root@129.226.126.194:/www/wwwroot/remote_project_dir /Users/sui/Documents
* du -sh uploads 查看某一目录磁盘空间大小
* Linux 复制粘贴文件新办法:
:9,15 copy 16 或 :9,15 co 16 由此可有: :9,15 move 16 或 :9,15 m 16 将第9行到第15行的文本内容到第16行的后面
* 文件压缩排除后缀文件
tar -zcvf backup.tar.gz --exclude-from=tarexclude.txt /www/project-dir
tarexclude.txt:
*.htm *.HTM *.html *.HTML *.doc *.DOC *.docx *.DOCX *.sep *.SEP *.gd *.GD *.gw *.GW *.xls *.xlsx *.ppt *.PPT *.pptx *.PPTX *.pdf *.PDF *.tif *.TIF *.gif *.GIF *.bmp *.BMP *.jpg *.JPG *.jpeg *.JPEG *.png *.PNG *.swf *.SWF *.avi *.rar *.tgz *.gz *.zip *.avi *.AVI *.rmvb *.flv *.FLV *.mpg *.MPG *.mpeg *.wmv *.WMV *.exe *.EXE *.wav *.WAV *.tmp *.txt *.TXT *.log