Linux下的压缩及归档

  Linux下常用的压缩格式有:

gz,bz2,xz,zip,Z //只能压缩文件不能压缩目录,如果传递一个目录,他会把目录中的文件逐个压缩

  、、压缩算法:算法不同,压缩比也不同

gz:gzip,压缩后为 .gz //gunzip解压缩

-d :解压缩

-#(#范围为1-9):指定压缩比,压缩比越小,压缩速度越快,压缩后的文件也越大,默认为6

zcat:在不解压的情况下查看压缩文本文件的内容(临时解压文件查看,关闭之后临时文件被删除)

bz2:bzip2,压缩后为.bz2

比gzip更大压缩比的压缩工具,对大文件来讲,bzip2有很大优势,使用格式近似 //加压缩bunzip2

-d:

-#:(1-9)

-k:可以保存原文件

bzcat:如果是文本文件,可以不用解压缩直接查看

xz:压缩后为.xz 用法相似 ||unxz,xzdec解压很小的文件,解压到屏幕

-d:

-#:

-c:输入到屏幕上来

-k:保留原文件

xzcat:

只能压缩文件,压缩比会更大

可以一次压缩一个文件也可以一次压缩多个文件

默认这些压缩命令压缩完会删除原文件,只保留压缩后的文件

解压缩之后也会默认删除原来的压缩文件,只保留解压缩之后的文件

zip: //压缩后默认不删除原文件

可以压缩目录,但压缩比不大

使用格式:zip 指定压缩名 要压缩的文件或目录

eg:zip test.zip test/ //压缩test目录,压缩完之后是test.zip

zip将多个文件压缩在一起,是一个既压缩又归档的命令

unzip 压缩文件:解压缩

archive 归档,把多个文件整合在一起,归档本身并不意味着压缩

tar: //只归档不压缩的文件。。。.tar

-c:创建归档文件

-f FILE.tar:操作的归档文件,指定压缩后文件的名称,f后必须带上参数

eg:tar -cf test.tar test*

-xf FILE.tar:展开归档文件

--xattrs: 表示在归档的同时,保留文件的扩展属性信息

-tf FILE.tar:不展开归档,查看归档到底归档了哪些文件

即归档又压缩:

-zcf:调用gzip,并创建归档文件

eg:tar -zcf test.tar.zip test/

-zxf:先解压缩后归档

eg:tar -zxf test.tar.zip //删除时-z选项可以删除

-jcf:调用bzip2,并创建归档文件

-jxf:先解压缩后归档

-Jcf:调用xz,并创建归档文件

-Jxf:先解压缩后归档

-gtf:不解压直接看归档的文件 -g可以省略,因为系统可以根据后缀名判断解压的类型

tar也是一个很好用的备份工具

cpio: 做成归档或者展开归档 把文件做成归档或者从归档中复制出来文件

练习:写一个脚本

从键盘让用户输入几个文件,脚本能够将此几个文件归档压缩成一个文件

sum.sh //直接跟命令行交互

#!/bin/bash

//echo -n "Input two intergers" //-n是为了不换行的输入

read -p "Input two intergers" A B //-p直接提示

echo "$A + $B is $[$A+$B]"

#!/bin/bash

read -p "Three files:" FILE1 FILE2 FILE3

read -p "Destination" DEST

read -p "Compress[gzip|bzip|xz]:" COMP

case COMP in

gzip)

tar -zcf $(DEST).tar.gz $FILE1 $FILE2 $FILE3

;;

bzip2)

tar -jcf $(DEST).tar.bz2 $FILE1 $FILE2 $FILE3

;;

xz)

tar -cf $(DEST).tar $FILE1 $FILE2 $FILE3

xz $(DEST).tar

;;

*)

echo "Unknown"

exit 9

;;

esac

时间: 2024-08-28 06:39:38

Linux下的压缩及归档的相关文章

linux下的压缩、归档

压缩  bz2.xz.zip.Z 不能压缩目录,压缩后默认删除原文件. gz: gzip /path/filename -d 解压缩 gunzip /paht/some_filename zcat /path/somefile.gz:在不解压的条件下,查看文本文件的内容. bzip2:比gzip有更大压缩比. bzip2 /path/some_filename -d 解压缩 -k 保留原文件 bunzip2 /path/some_filename bzcat /path/somefile.bz2

linux系统下文件压缩与归档

不管是普通使用linux系统,还是做为一名运维人员,掌握文件的压缩与归档都是有必要的,在linux系统上压缩与归档的工具是比较多的,今天我就带大家了解一些比较常见的压缩与归档工具. 一.compress/uncompress  默认会删除原文件 compress [-dfvcVr] [-b maxbits] [file ...]  -d: 解压缩,相当于uncompress  -c: 结果输出至标准输出,不删除原文件  -v: 显示详情  uncompress 解压缩  zcat 不解压缩的前提

常见压缩格式比对,及 Linux 下的压缩相关指令

可先浏览加粗部分 一.常见压缩档 *.zip | zip 程序压缩打包的档案: (很常见,但是因为不包含文档名编码信息,跨平台可能会乱码) *.rar | winrar 进程压缩打包的档案:(在windows上很常见,但是是商业软件.) *.gz | gzip 程序压缩的档案: (linux目前使用最广泛的压缩格式) *.bz2 | bzip2 程序压缩的档案: *.xz | xz 程序压缩的档案: *.tar | tar 程序打包的资料,并没有压缩过: *.tar.gz | tar 程序打包的

Linux下的压缩解压缩

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲tar命令的基本用法: tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面 来举例说明一下: # tar -cf all.tar *.jpg 这条命令是将所有.jpg的文件打成一个名为all.tar的包.-c是表示产生新的包 ,-f指定包的文件名. # tar -rf a

Linux下的压缩文件剖析 (tar/gzip的区别)

Linux下的压缩文件剖析 对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了.本文就来对这些常见的压缩文件进行一番小结,希望你下次遇

Linux下的压缩解压缩命令详解

zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o -d /home/sunny myfile.zip把myfile.zip文件解压到 /home/sunny/-o:不提示的情况下覆盖文件:-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下: 3.其他zip -d myfile.zip smart.txt删除压缩文件中smart.txt文件z

Linux下的压缩与解压缩

tar命令 zip命令 unzip命令 gzip命令 bzip2命令 tar命令 :压缩和解压缩tar格式的文件 格式:tar [主选项+辅选项] 文件或目录 [主选项告诉tar要做什么事,是必须要有的,辅选项是辅助使用的,和通常的选项一样,可选]  主选项:它们不可能同时出现 -c:创建新的压缩文件,相当与打包 -x:从压缩文件中释放文件,相当于拆包 -t:列出压缩文件中的内容 辅选项: -C:切换到指定目录 -z:是否同时具有gzip的属性?亦即是否需要用gzip压缩或解压?一般格式为xx.

linux下文件压缩与解压操作

对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了.本文就来对这些常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被搞晕.

Linux下常见压缩解压命令

inux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d /home/sunny myfile.zip 把myfile.zip文件解压到 /home/sunny/ -o:不提示的情况下覆盖文件: -d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下: 3.其他 zip -d myfile.zip smart.txt 删