文件的压缩与打包
本帖最后由 Zbrel 于 2017-8-3 09:01 编辑Linux常见的压缩文件的后缀
*.Z compress程序压缩的文件;
*.bz2 bzip2程序压缩的文件;
*.gz gzip程序压缩的文件;
*.tar tar程序打包的数据,没有压缩;
*.tar.gz或tgz tar程序打包并经过gzip压缩的文件;
*.tar.bz2 tar程序打包并经过bzip2压缩的文件;
*.zip 使用zip压缩;
*.rar 使用rar压缩
compress
compress [-drc] 文件或目录
-d 用来解压缩的参数
-r 可以连同目录下的文件同时压缩
-c 将压缩数据输出为标准输出(输出到屏幕)
例如:
compress file产生file.z
compress -c file>file.z
compress -d file.z 或uncompress file.z解压缩
compress 已经很少人在使用了,因为这支程序无法解开 *.gz 的档案,而 gzip 则可以解开*.Z 的档案。
gzip,zcat
gzip 可以说是应用度最广的压缩指令了!目前 gzip 可以解开 compress, zip 与gzip 等软件所压缩的档案。 至于 gzip 所建立的压缩文件为 *.gz,使用 gzip 压缩的档案在 Windows 系统中,可以被 WinRAR 这个软件解压缩。
gzip [-cdt#] filename
-c 将压缩的数据输出到屏幕上,可通过数据流重导向处理
-d 解压缩的参数
-t 可以用来检验一个压缩文件的一致性,看文件有无错误
-# 压缩等级,1最不好,9最好,6是默认值
例如:gzip file产生file.gz
zcat file.gz读取file的内容
gzip -d file.gz或gunzip file.gz解压缩
gzip -9 -c file > file.gz 以最大压缩比压缩file这个文件,并保留原文件
gzip这个压缩指令主要想要用来取代compress,所以compress的压缩文件也可以使用gzip来解开
bzip2,bzcat
bzip [-cdz#] filename
bzcat filename.bz2
-c 将压缩过程产生的数据输出到屏幕上
-d 解压缩的意思
-z 压缩的意思
-# 压缩等级,1最不好,9最好,6是默认值
例如:bzip2 -z file 或bzip2 file产生file.bz2
bzcat file,bz2读取file的内容
bzip2 -d file.bz2或bunzip2 file.bz2解压缩
bzip2 -9 -c file > file.bz2以最大压缩比压缩file这个文件,并保留原文件
.bz, .bz2, .tbz, .tbz2都可以用bzip2解压缩
前面谈到的指令大多仅能针对单一档案来进行压缩,虽然 gzip 不 bzip2 也能够针对目录来进行压缩, 不过,这两个指令对目录的压缩指的是『将目录内的所有档案 "分别" 进行压缩』的动作! 而不像在 Windows 的系统,可以使用类似 WinRAR 这一类的压缩软件来将好多数据『包成一个档案』 的样式。 tar 可以将多个目录或档案打包成一个大档案,同时还可以通过 gzip/bzip2 的支持,将该档案同时进行压缩!
tar
tar [-zxcvfpP] 文件或目录
-z 通过gzip 的支持进行压缩/解压缩:此时档名最好为 *.tar.gz
-j 通过bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2
-x 解开一个压缩文件的参数命令
-t 查看tarfile里面的文件
-c 创建一个新压缩文件的命令
-v 压缩的过程中显示文件
-f 使用文件名,注意在f参数之后要立即接档名,不能再加参数!
-p 使用原文件的原来属性(属性不会依据用户而变)
-P 可以使用绝对路径
--exclude FILE 在压缩的过程中,不要将FILE打包
例如:
压 缩:tar -jcvf filename.tar.bz2 要被压缩的档案和目录名称
查 询:tar -jtvf filename.tar.bz2
解压缩:tar -jxvf filename.tar.bz2 -C 欲解压缩的目录
仅解开单一档案的方法:先找到要的档名,假设解开shadow档案:tar -jtvf /root/etc.tar.bz2|grep ‘shadow’grep是撷取关键词的功能,管线|配合grep可以撷取关键词。找到目的档案后,解开tar -jxvf /root/etc.tar.bz2 etc/shadow
打包某目录,但不含该目录下的某些档案可以通过--exclude:tar -jcvf /root/system.tar.bz2 --exclude=/root/etc* --exclude=/root/system.tar.bz2 /etc /root
zip
zip [-AdFmrSu#] 目标文件名 源文件名
-A 调整可执行的自动解压缩文件
-d 从压缩文件中删除指定的文件
-F 尝试修复已损坏的压缩文件
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移动到压缩文件中
-r 递归处理,将指定目录下的所有文件和子目录一并处理
-S 包含系统和隐藏文件
-u 更换较新的文件到压缩文件内
-Z 替压缩文件加上注释
-# 压缩等级,1最不好,9最好
zipinfo
zipinfo [-lhMtz] 压缩文件 文件
-l 只列出文件名
-h 只列出压缩文件的名称
-M 若信息内容超过一个画面,则采用类似more指令的方式列出来
-t 只列出压缩文件内所包含的文件数目,压缩前后的文件大小及压缩率
-z 如果压缩文件内有注释,就将注释显示出来
unzip
unzip [-ltvMP] [.zip] [文件] [-d目录]
-l 显示压缩文件内所包含的文件
-t 检查压缩文件是否正确
-v 显示执行时的详细信息
-M 将输出的结果送到more程序处理
-P <密码>使用zip密码选项
很全,忍不住都收藏了~
页:
[1]