压缩和解压缩

压缩数据或者解压数据:

为什么要移出数据信息前面的 / 目录

-P          --absolute-paths  不要从文件名中去除 '/'

1 compress和uncompress

格式

compress Options [file ...]

常用选项

  • -d 解压缩,相当于uncompress
  • -c 结果输出至标准输出,不删除原文件
  • -v 显示详情
  • uncompress fifile.Z 解压缩
  • zcat fifile.Z 不显式解压缩的前提下查看文本文件内容

范例:

zcat file.Z >file

2 gzip和gunzip

格式:

gzip [OPTION]... FILE ...

常用选项:

  • -d 解压缩,相当于gunzip
  • -c 结果输出至标准输出,保留原文件不改变
  • -# 指定压缩比,#取值为1-9,值越大压缩比越大
  • gunzip fifile.gz 解压缩
  • zcat fifile.gz 不显式解压缩的前提下查看文本文件内容

范例:

gzip -c messages >messages.gz
gzip -c -d messages.gz > messages
zcat messages.gz > messages
cat messages | gzip > m.gz

3. bzip2和bunzip2

格式:

bzip2 [OPTION]... FILE ...

常用选项

  • -k keep, 保留原文件
  • -d 解压缩
  • -c 结果输出至标准输出,保留原文件不改变
  • -# 1-9,压缩比,默认为9
  • bunzip2 fifile.bz2 解压缩
  • bzcat fifile.bz2 不显式解压缩的前提下查看文本文件内容

4 xz和unxz

格式

xz [OPTION]... FILE ...

常用选项

  • -k keep, 保留原文件

  • -d 解压缩

  • -c 结果输出至标准输出,保留原文件不改变

  • -# 压缩比,取值1-9,默认为6

unxz fifile.xz 解压缩xzcat fifile.xz 不显式解压缩的前提下查看文本文件内容

5 zip和unzip

zip 可以实现打包目录并压缩

范例:

#打包并压缩
zip –r /backup/sysconfig.zip /etc/sysconfig/
#默认解压缩至当前目录
unzip /backup/sysconfig.zip
#解压缩至指定目录
unzip /backup/sysconfig.zip -d /tmp cat /var/log/messages | zip messages -
unzip -p message.gz > message         #-p 表示管道

打包和解包

1 tar

tar 即 Tape ARchive,磁带归档,经常用于备份

格式

tar  [OPTION]...

(1) 创建归档,保留权限

tar -cpvf /PATH/FILE.tar FILE...

(2) 追加文件至归档: 注:不支持对压缩文件追加

tar -rf /PATH/FILE.tar FILE...

(3) 查看归档文件中的文件列表

tar -t -f /PATH/FILE.tar

(4) 展开归档

tar xf /PATH/FILE.tar
tar xf /PATH/FILE.tar -C /PATH/

(5) 结合压缩工具实现:归档并压缩

  • -z 相当于gzip压缩工具
  • -j 相当于bzip2压缩工具
  • -J 相当于xz压缩工具

范例:

[root@naWang day21]# tar zcvf 1.txt.tar.gz 1.txt
1.txt
[root@naWang day21]# ll
总用量 8
-rw-r--r-- 1 root root  14 12月  9 20:05 1.txt
-rw-r--r-- 1 root root 121 12月  9 20:05 1.txt.tar.gz
[root@naWang day21]# tar jcvf 1.txt.tar.bz2 1.txt
1.txt
[root@naWang day21]# ll
总用量 12
-rw-r--r-- 1 root root  14 12月  9 20:05 1.txt
-rw-r--r-- 1 root root 125 12月  9 20:06 1.txt.tar.bz2
-rw-r--r-- 1 root root 125 12月  9 20:05 1.txt.tar.gz
[root@naWang day21]# tar Jcvf 1.txt.tar.xz 1.txt
1.txt
[root@naWang day21]# ll
总用量 16
-rw-r--r-- 1 root root  14 12月  9 20:05 1.txt
-rw-r--r-- 1 root root 125 12月  9 20:06 1.txt.tar.bz2
-rw-r--r-- 1 root root 125 12月  9 20:05 1.txt.tar.gz
-rw-r--r-- 1 root root 180 12月  9 20:09 1.txt.tar.xz

–exclude 排除文件

范例:

tar zcvf /root/a.tgz --exclude=/app/host1 --exclude=/app/host2 /app

-T 选项指定输入文件

-X 选项指定包含要排除的文件列表

范例:

tar zcvf mybackup.tar.gz -T /root/includefilelist -X /root/excludefilelist

2 split

split 命令可以分割一个文件为多个文件

范例:

#分割大的 tar 文件为多份小文件
split -b Size –d tar-file-name
prefix-name split -b 1M mybackup.tgz mybackup-parts #切换成的多个小分文件使用数字后缀
split -b 1M –d mybackup.tgz mybackup-parts

将多个切割的小文件合并成一个大文件

cat mybackup-parts* > mybackup.tar.gz

3 cpio

cpio 是历史悠久的打包和解包工具,不过目前也已较少使用

cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结

尾的文件

格式:

cpio [选项] > 文件名或者设备名
cpio [选项] < 文件名或者设备名

常用选项

  • -o output模式,打包,将标准输入传入的文件名打包后发送到标准输出
  • -i input模式,解包,对标准输入传入的打包文件名解包到当前目录
  • -t 预览,查看标准输入传入的打包文件中包含的文件列表
  • -O fifilename 输出到指定的归档文件名
  • -A 向已存在的归档文件中追加文件
  • -I fifilename 对指定的归档文件名解压
  • -F fifilename 使用指定的文件名替代标准输入或输出
  • -d 解包生成目录,在cpio还原时,自动的建立目录
  • -v 显示打包过程中的文件名称

范例:

#将etc目录备份:
find ./etc -print | cpio -ov > bak.cpio
#将/data内容追加bak.cpio
find /data | cpio -oA -F bak.cpio
#内容预览
cpio –tv < etc.cpio
#解包文件
cpio –idv < etc.cpio

追加压缩数据

一个压缩包生成之后,如何向这个压缩包中追加新的压缩数据

批量压缩

如何实现批量压缩不同的数据信息

eg:将/etc目录中以h开头的文件,进行压缩保存

find /etc/ -maxdepth 1 -type f -name "h*" |xargs tar -zcvf /backup/etc.tar.gz

Linux系统下文件的压缩与打包相关推荐

  1. linux系统下压缩文件,Linux系统下文件的压缩.打包与解压

    处理 .zip 文件的 zip 和 unzip zip 和 unzip 程序位于 /usr/bin 目录中,它们和 MS - DOS 下的 pkzip.pkunzip 以及 MS-windows 的 ...

  2. linux中的文件夹压缩文件,linux将文件拷贝到目录下Linux下文件的压缩与打包详解...

    在Linux中,有很多的压缩命令.利用这些压缩命令,可以方便的从网络上下载大型的文件.同时,我们知道,Linux文件的扩展名是没有特殊意义的,不过,因为Linux下存在着许多压缩命令,所以为了方便记忆 ...

  3. Linux系统下文件与目录操作讲解

    Linux系统下文件与目录操作 在Linux系统中有一句话叫做,一切皆文件.上节我们说的I/O操作,对于普通I/O操作,都是打开.读写.关闭.这节我们通过stat结构体来了解文件的一些基本信息和本质特 ...

  4. linux 默认文件属性,linux系统下文件的默认权限以及隐藏属性的作用

    [摘要] 操作系统(Operating System,简称OS)是管理计算机硬件与软件资源的计算机程序.操作系统需要处理如管理与配置内存.决定系统资源供需的优先次序.控制输入设备与输出设备.操作网络与 ...

  5. linux系统下文件查找

    在我们实际应用中,经常需要查找某个特定的文件,或者根据文件的某个特定属性进行查找,今天小菜就给大家分享一下,linux系统下文件查找的两大利器:  1,locate:非实时查找(基于预先生成的数据库查 ...

  6. Linux系统下文件与目录操作

    Linux系统下文件与目录操作  与其它操作系统一样,在Linux系统下用户的数据和程序也是以文件的形式保存的.所以在使用Linux的过程中,是经常要对文件与目录进行操作的.现在我们就以一个Windo ...

  7. linux系统下文件的上传和下载(rz、sz)

    linux系统下的rz.sz上传和下载 rz 是从本地上传文件的时候用的, sz 相当于把Linux 服务器上的文件 下载到 本地. 通过这两个命令就可以把 Windows 和Linux 的文件 进行 ...

  8. Linux系统下文件字体乱码的解决方案

    在Linux系统下经常会遇到从网上下载的文件,打开是乱码的情况,尤其是含有中文字符的txt文件或者是一些后缀为 .srt..ass的字幕文件,其原因大多是因为这些文件的编码格式为gb18030编码格式 ...

  9. linux 文件目录操作,Linux系统下文件与目录操作

    与其它操作系统一样,在Linux系统下用户的数据和程序也是以文件的形式保存的.所以在使用Linux的过程中,是经常要对文件与目录进行操作的.现在我们就以一个Window用户的立场来学习一下Linux下 ...

最新文章

  1. php显示页面查询次数和耗时,wordpress显示页面查询次数、页面执行时间
  2. List集合与Array数组之间的互相转换
  3. nuxt 脚手架创建nuxt项目中不支持es6语法的解决方案
  4. 闲来没事写个记事本玩玩!!!
  5. 在.NET Core 中收集数据的几种方式
  6. 华为摄像机搜索软件_别人的终点华为的起点!用普惠AI守护城市安全
  7. 学习python的第五天
  8. c++读取和写入TXT文件的整理 1
  9. Hive 内部表外部表
  10. shell进阶之tree、pstree、lsof命令详解
  11. vm虚拟机的安装使用装系统有序列号
  12. CDMA关键技术(RAKE、软切换、功率控制
  13. MessageDigest 类的用法
  14. 知网上下载硕博论文为PDF格式的方法
  15. ue4蓝图碰撞检测的类型_UE4蓝图碰撞检测解析
  16. Windows10系统提示 为了对电脑进行保护,已经阻止此应用(管理员已阻止你运行此应用。有关详细信息,请与管理员联系。)的解决办法
  17. 网络聊天室的分析与实现
  18. 【完美解决方案】Error during artifact deployment. See server log for details.
  19. scrapy爬取彼岸图网照片(搜索关键字,去重)
  20. 打包php程序为安装文件,zblogphp主题和插件怎么打包成.zba格式文件

热门文章

  1. 综合场馆的优势有哪些?
  2. Coderforces 字符串水题合集
  3. STM32F407霸天虎HAL库学习笔记——串口发送
  4. 【iconfont】字体图标
  5. CentOS7下部署敏捷项目管理软件JIAR-7.13.18
  6. Mindjet_MindManager_2016_Trial_32 安装手册·
  7. MVC 公共类App_Code
  8. Win10、CentOS 7双系统
  9. [EDI 案例] 汽车地带/Autozone EDI解决方案
  10. 问道Netty。持续更新。。。