在linux中常见的压缩命令

首先,在linux中压缩文件的扩展名大多是

*.gz  gzip程序压缩的文件

*.bz2  bzip2程序压缩的文件

*.tar  tar程序打包的数据,并没有压缩过

*.tar.gz  tar程序打包的文件,经过gzip压缩

*.tar.bz2  tar程序打包的文件,经过bzip2压缩

gzip

gzip在不加参数的时候,默认会将文件以-6压缩,生成原名称为[文件名+扩张名+.gz]的文件,并且源文件不保留,

-c  将压缩的数据输出到屏幕上,可以通过输出重定向来处理

    gizp -c 1.txt > 1.txt.gz

-d  解压缩

-f  当压缩或者解压缩的时候,若文件已经存在,强制覆盖

    gzip -f 1.txt

    gzip -df 1.txt.gz

-l  列出压缩文件内容

    gzip -l 1.txt.gz

-q  屏蔽所有的警告,安静的进行压缩

-r  递归将目录中的文件压缩

-t  用来检测一个压缩文件的一致性

-v  可以显示源文件/压缩文件的压缩比等

-#  压缩等级,-1最快,-9最慢但是压缩比最好,默认为-6

bzip2

bzip2在不加参数的时候,会将文件压缩成文件名为[源文件名+源文件扩展名+.bz2]的文件,和gzip一样,源文件不会保留

-d  解压缩

-f  当压缩或者解压缩的时候,若文件已经存在,强制覆盖

-t  用来检测一个压缩文件的一致性

-z  压缩的参数

-k  保留原始文件,不会删除原始文件的哦

    bzip2 -k 1.txt

-v  可以显示源文件/压缩文件的压缩比等

-#  压缩等级,-1最快,-9最慢但是压缩比最好,默认为-6

tips:gzip和bzip2仅能对单一的文件进行压缩,虽然能够针对目录进行压缩,但也只是将目录的内的所有文件分别进行压缩罢了.

tar----神器

-v  在压缩,解压缩的过程中,将正在处理的文档名显示出来

-t  查看打包文件的内容

-c  创建打包文件

-C  解压缩,指定目录

-O   将文件解开到标准输出

-x  解压缩

-j  bzip2压缩/解压缩,文档后缀*.tar.bz2

-z  gzip压缩/解压缩,文档后缀*.tar.gz

-f  后面要立刻接要被处理的文档名

--exclude=file  在压缩过程中,忽略file打包

 bzip2格式压缩
[root@iZ288fgkcpkZ default]# tar -cjf test.tar.bz2 tar/
[root@iZ288fgkcpkZ default]# ls
gzip hardlink.php index.html info.php symboliclink.php tar test.php test.tar.bz2
[root@iZ288fgkcpkZ default]# tar -tjf test.tar.bz2
tar/
tar/.txt
tar/tar.txt
tar/.txt
tar/.txt gzip格式压缩
[root@iZ288fgkcpkZ default]# tar -czf test.tar.gz tar/
[root@iZ288fgkcpkZ default]# ls
gzip hardlink.php index.html info.php symboliclink.php tar test.php test.tar.bz2 test.tar.gz
[root@iZ288fgkcpkZ default]# tar -tzf test.tar.gz
tar/
tar/.txt
tar/tar.txt
tar/.txt
tar/.txt 解压缩指定目录
[root@iZ288fgkcpkZ default]# mkdir bak
[root@iZ288fgkcpkZ default]# tar -xzvf test.tar.gz -C bak/
tar/
tar/.txt
tar/tar.txt
tar/.txt
tar/.txt
[root@iZ288fgkcpkZ default]# ls bak/tar/
.txt .txt .txt tar.txt 压缩的时候忽略指定文件
[root@iZ288fgkcpkZ default]# echo 'exclude' > tar/.txt
[root@iZ288fgkcpkZ default]# ls tar/
.txt .txt .txt .txt tar.txt
[root@iZ288fgkcpkZ default]# tar -czvf .tar.gz --exclude=tar/.txt tar/
tar/
tar/.txt
tar/tar.txt
tar/.txt
tar/.txt
[root@iZ288fgkcpkZ default]# tar -tzvf .tar.gz
drwxr-xr-x root/root -- : tar/
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/tar.txt
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/.txt

扩展问题

①,仅备份比某个时刻还要新的文件(如备份7.27之后的)
 拷贝文件到目录tar下,不修改属性
[root@iZ288fgkcpkZ default]# cp -a index.html test.php tar/
[root@iZ288fgkcpkZ default]# ll tar/
总用量
drwxr-xr-x root root 7月 : .
drwxr-xr-x www www 7月 : ..
-rw-r--r-- root root 7月 : .txt
-rw-r--r-- root root 7月 : .txt
-rw-r--r-- root root 7月 : .txt
-rw-r--r-- root root 7月 : .txt
-rwxr-xr-x www www 6月 index.html
-rw-r--r-- root root 7月 : tar.txt
-rw-r--r-- root root 7月 : test.php 压缩打包时间为7月27日(含)之后的文件
[root@iZ288fgkcpkZ default]# tar -czvf newer10.tar.gz --newer-mtime="2015-07-27 00:00:00" tar/
tar/
tar/.txt
tar/tar.txt
tar/.txt
tar: tar/index.html: 文件未改变;未输出
tar/.txt
tar/.txt
tar/test.php
[root@iZ288fgkcpkZ default]# tar -tzvf newer10.tar.gz
drwxr-xr-x root/root -- : tar/
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/tar.txt
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/.txt
-rw-r--r-- root/root -- : tar/test.php

实际问题

  1. 只解压缩包中的一个指定文件,并将其输出到标准输出

tar -xzOf web12_im_log.tar.gz data/webroot/zhihuishu/application/logs/im/im-2016033012.log

linux文件压缩与打包的更多相关文章

  1. Linux文件压缩与打包笔记

    linux 文件压缩与打包笔记 压缩原理:通过算法去掉空位,1Bytes=8bits , 可能存储的真正有用的数据并没有占满一个字节空间 , 还有就是可能有重复的数据,通过某种算法从这些方面进行压缩处 ...

  2. Linux 文件压缩、打包

    文件压缩 计算机使用byte单位来计量.实际上,计算机最小的计量单位是bit.1byte = 8 bit.如果记录1这个数字,00000001,1会在最右边占一个1个bit 其他7个bit会被填上0. ...

  3. Linux文件压缩、打包、备份

    1:Linux常见的压缩文件 2:gzip压缩指令 3:bzip2压缩指令(比gzip更高压缩比) 同理,可以用bzcat\bzmore\bzless读取被压缩后文件内容. 4:xz压缩指令(比bzi ...

  4. Linux文件压缩和打包

    gzip压缩工具 1.将etc下的所有conf文件查看后循环追加到1.txt文件中 [root@bogon gzip]# find /etc/ -type f -name '*.conf' -exec ...

  5. 10.18.2 linux文件压缩与打包

    tar压缩工具 tar 本身为一个打包工具,可以把目录打包成一个文件,它的好处是它把所有文件整合成一个大文件整体,方便拷贝或者移动. 语法:tar [-zjxcvfpP] filename tar 命 ...

  6. Linux系统下文件压缩与打包命令

    Linux系统下文件压缩与打包命令 常用的压缩文件拓展名 * .Z * .zip * .gz * .bz2 * .xz * .tar * .tar.gz * .tar.bz2 * .tar.xz 压缩 ...

  7. linux文件压缩与文件夹压缩(打包)

    目录 一:linux文件压缩 1.linux常见的压缩包有哪些? 2.bzip压缩(文件) 二:打包(文件夹压缩) 1.打包命令 2.参数 3.参数解析(实战) 4.注意事项 简介: win中的压缩包 ...

  8. Linux 文件压缩与归档

    .note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...

  9. Linux文件压缩和解压缩命令

    Linux文件压缩和解压缩命令: tar 命令(打包并压缩的话,原文件也会默认存在) -c 建立打包档案 -x 解包 -t 查看包里的类容 -r 向包里追加文件 -v 显示打包过程 -f 文件 比如: ...

随机推荐

  1. 整理的有用的一些EF的CommonDAL小封装

    CommonDAL封装: using System; using System.Collections.Generic; using System.Data.Entity; using System. ...

  2. Windows 64位操作系统和32位操作系统在注册表上的有一点不一样

    Windows 64位操作系统为提供对32位应用程序的兼容,在“C:\Windows\SysWOW64”目录下保留了很多32位的工具(如CMD.exe是32位的).在Windows 64位操作系统上跑 ...

  3. SVG操作插件:SVG.JS 个人提取部分实用中文文档

    先贴出github地址:https://github.com/svgdotjs/svg.js(也就是原文档的说明和文件的下载地址) 创建SVG文档 var draw = SVG('drawing'). ...

  4. Python中的元组(tuple)、列表(list)、字典(dict)

    -------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...

  5. [moka同学摘录]在Centos 6.5下成功安装和配置了vim7.4

    来源:https://my.oschina.net/gzyh/blog/266097 资源下载地址: 链接:http://pan.baidu.com/s/1kVuaV5P 密码:xkq9   摘要: ...

  6. 控制台(Console)报错:java.io.IOException: Broken pipe

    控制台(Console)输出: java.io.IOException: Broken pipe at sun.nio.ch.FileDispatcherImpl.write0(Native Meth ...

  7. Java 上传文件到 SFTP 抛异常 java.lang.NoClassDefFoundError: Could not initialize class sun.security.ec.SunEC 的解决办法

    最近从 Op 那里报来一个问题,说是SFTP上传文件不成功.拿到的 Exception 如下: Caused by: java.lang.NoClassDefFoundError: Could not ...

  8. HTML5离线缓存Manifest

    web app不比PC,有性能和流量方面的考虑,离线应用越来越重要,虽然浏览器有缓存机制,但是时常不靠谱,更何况普通情况下html文件是没法缓存的,断网之后一切over. 什么是manifest? 简 ...

  9. 对getElementsByTagName("*")获取全部元素的总结

    var all=document.getElementsByTagName("*")      //获取整个页面的标签元素 alert(all.length);           ...

  10. Log4net中的调错

    在使用log4net时,感觉最麻烦的就是配置文件了,为了使用方便,我不得不先准备好一个完整的配置文件方案,测试了输出到文本.控制台.windows事件.SQL Server数据库都没有问题,但输出到o ...