2023年8月3日发(作者:)

linux整理之压缩解压缩、加密、分卷=========================================压缩解压缩=======================================================

.tar

解包:tar xvf

打包:tar cvf DirName

(注:tar是打包,不是压缩!)

———————————————

.gz

解压1:gunzip

解压2:gzip -d

压缩:gzip FileName

———————————————

. 和 .tgz

解压:tar zxvf

压缩:tar zcvf DirName

———————————————

.bz2

解压1:bzip2 -d 2

解压2:bunzip2 2

压缩: bzip2 -z FileName

———————————————

.2

解压:tar jxvf 2

压缩:tar jcvf 2 DirName

———————————————

.bz

解压1:bzip2 -d

解压2:bunzip2

压缩:未知

———————————————

.

解压:tar jxvf

压缩:未知

———————————————

.Z

解压:uncompress FileName.Z

压缩:compress FileName

.tar.Z

———————————————

解压:tar Zxvf .Z

压缩:tar Zcvf .Z DirName

———————————————

.zip

解压:unzip

压缩:zip DirName

———————————————

.rar

解压:rar x

压缩:rar a DirName

———————————————

.lha

解压:lha -e

压缩:lha -a FileName

———————————————

.rpm 解包:rpm2cpio | cpio -div

———————————————

.deb

解包:ar p | tar zxf -

———————————————

.tar .tgz . .tar.Z . .2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar . .sit .sea

解压:sEx x FileName.*

压缩:sEx a FileName.* FileName

sEx只是调⽤相关程序,本⾝并⽆压缩、解压功能,请注意!

gzip 命令

减少⽂件⼤⼩有两个明显的好处,⼀是可以减少存储空间,⼆是通过⽹络传输⽂件时,可以减少传输的时间。gzip 是在 Linux 系统中经常使⽤的⼀个对⽂件进⾏压缩和解压缩的命令,既⽅便⼜好⽤。

语法:gzip [选项] 压缩(解压缩)的⽂件名该命令的各选项含义如下:

-c 将输出写到标准输出上,并保留原有⽂件。-d 将压缩⽂件解压。-l 对每个压缩⽂件,显⽰下列字段: 压缩⽂件的⼤⼩;未压缩⽂件的⼤⼩;压缩⽐;未压缩⽂件的名字-r 递归式地查找指定⽬录并压缩其中的所有⽂件或者是解压缩。-t 测试,检查压缩⽂件是否完整。-v 对每⼀个压缩和解压的⽂件,显⽰⽂件名和压缩⽐。-num ⽤指定的数字 num 调整压缩的速度,-1 或 --fast 表⽰最快压缩⽅法(低压缩⽐),-9 或--best表⽰最慢压缩⽅法(⾼压缩⽐)。系统缺省值为 6。指令实例:

gzip *% 把当前⽬录下的每个⽂件压缩成 .gz ⽂件。gzip -dv *% 把当前⽬录下每个压缩的⽂件解压,并列出详细的信息。gzip -l *% 详细显⽰例1中每个压缩的⽂件的信息,并不解压。gzip % 压缩 tar 备份⽂件 ,此时压缩⽂件的扩展名为.。

=======================================加密========================================================================

⽅法⼀:⽤tar命令 对⽂件加密压缩和解压

压缩:

tar -zcf - filename |openssl des3 -salt -k password | dd of=3

此命令对filename⽂件进⾏加码压缩 ⽣成3加密压缩⽂件, password 为加密的密码

解压:

dd if=3 |openssl des3 -d -k password | tar zxf -

注意命令最后⾯的“-” 它将释放所有⽂件, -k password 可以没有,没有时在解压时会提⽰输⼊密码

⽅法⼆:⽤zip命令对⽂件加密压缩和解压

压缩:

zip -re filename 回车,输⼊2次密码

zip -rP passwork filename passwork是要输⼊的密码

解压:

unzip 按提⽰输⼊密码 unzip -P passwork passwork是要解压的密码,这个不会有提⽰输⼊密码的操作

====================================================分卷===================================================

  

rar a -m5 -v12m myarchive myfiles # 最⼤限制为 12M

  rar e #解压

  分卷压缩

  ubuntu下没有默认安装rar,可以通过 sudo apt-get install rar,sudo apt-get install unrar 来安装rar.

  安装过后,使⽤以下命令进⾏分卷压缩:

  rar a -vSIZE 压缩后的⽂件名 被压缩的⽂件或者⽂件夹

  例如:rar a -v50000k eclipse

  此命令即为对eclipse⽂件夹进⾏分卷压缩,每卷的⼤⼩为50000k,压缩后的⽂件名为

  

  举例说明:

  要将⽬录logs打包压缩并分割成多个1M的⽂件,可以⽤下⾯的命令:

  tar cjf - logs/ |split -b 1m - 2.

  完成后会产⽣下列⽂件:

  , ,

  要解压的时候只要执⾏下⾯的命令就可以了:

  cat 2.a* | tar xj

  再举例:

  要将⽂件分包压缩成500 bytes的⽂件:

  tar czf - | split -b 500 -

  最后要提醒但是那两个"-"不要漏了,那是tar的ouput和split的input的参数。

  3、⽤7z

 

同样⽤以上例⼦

  在film上层⽬录操作,保留film⽬录名

  压缩: 7z a film.7z film -v80m

  解压到当前⽬录: 7z x film.7z.001

  解压到⽬录a: mkdir a && cd a && 7z x ../film.7z.001

  或者 7z -oa x film.7z.001

  不保留film⽬录名

  压缩 cd film && find . | xargs 7z a film.7z -v80m

  解压 7z -oa x film.7z.001

  单纯采⽤7z的话,⽂件的权限(拥有者)属性会丢失, 采⽤如下办法则可以保留:

  压缩:

  tar cf - film | 7z a -si .7z -v80m

  解压缩:

  7z x -so .7z.001 | tar xf -

2023年8月3日发(作者:)

linux整理之压缩解压缩、加密、分卷=========================================压缩解压缩=======================================================

.tar

解包:tar xvf

打包:tar cvf DirName

(注:tar是打包,不是压缩!)

———————————————

.gz

解压1:gunzip

解压2:gzip -d

压缩:gzip FileName

———————————————

. 和 .tgz

解压:tar zxvf

压缩:tar zcvf DirName

———————————————

.bz2

解压1:bzip2 -d 2

解压2:bunzip2 2

压缩: bzip2 -z FileName

———————————————

.2

解压:tar jxvf 2

压缩:tar jcvf 2 DirName

———————————————

.bz

解压1:bzip2 -d

解压2:bunzip2

压缩:未知

———————————————

.

解压:tar jxvf

压缩:未知

———————————————

.Z

解压:uncompress FileName.Z

压缩:compress FileName

.tar.Z

———————————————

解压:tar Zxvf .Z

压缩:tar Zcvf .Z DirName

———————————————

.zip

解压:unzip

压缩:zip DirName

———————————————

.rar

解压:rar x

压缩:rar a DirName

———————————————

.lha

解压:lha -e

压缩:lha -a FileName

———————————————

.rpm 解包:rpm2cpio | cpio -div

———————————————

.deb

解包:ar p | tar zxf -

———————————————

.tar .tgz . .tar.Z . .2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar . .sit .sea

解压:sEx x FileName.*

压缩:sEx a FileName.* FileName

sEx只是调⽤相关程序,本⾝并⽆压缩、解压功能,请注意!

gzip 命令

减少⽂件⼤⼩有两个明显的好处,⼀是可以减少存储空间,⼆是通过⽹络传输⽂件时,可以减少传输的时间。gzip 是在 Linux 系统中经常使⽤的⼀个对⽂件进⾏压缩和解压缩的命令,既⽅便⼜好⽤。

语法:gzip [选项] 压缩(解压缩)的⽂件名该命令的各选项含义如下:

-c 将输出写到标准输出上,并保留原有⽂件。-d 将压缩⽂件解压。-l 对每个压缩⽂件,显⽰下列字段: 压缩⽂件的⼤⼩;未压缩⽂件的⼤⼩;压缩⽐;未压缩⽂件的名字-r 递归式地查找指定⽬录并压缩其中的所有⽂件或者是解压缩。-t 测试,检查压缩⽂件是否完整。-v 对每⼀个压缩和解压的⽂件,显⽰⽂件名和压缩⽐。-num ⽤指定的数字 num 调整压缩的速度,-1 或 --fast 表⽰最快压缩⽅法(低压缩⽐),-9 或--best表⽰最慢压缩⽅法(⾼压缩⽐)。系统缺省值为 6。指令实例:

gzip *% 把当前⽬录下的每个⽂件压缩成 .gz ⽂件。gzip -dv *% 把当前⽬录下每个压缩的⽂件解压,并列出详细的信息。gzip -l *% 详细显⽰例1中每个压缩的⽂件的信息,并不解压。gzip % 压缩 tar 备份⽂件 ,此时压缩⽂件的扩展名为.。

=======================================加密========================================================================

⽅法⼀:⽤tar命令 对⽂件加密压缩和解压

压缩:

tar -zcf - filename |openssl des3 -salt -k password | dd of=3

此命令对filename⽂件进⾏加码压缩 ⽣成3加密压缩⽂件, password 为加密的密码

解压:

dd if=3 |openssl des3 -d -k password | tar zxf -

注意命令最后⾯的“-” 它将释放所有⽂件, -k password 可以没有,没有时在解压时会提⽰输⼊密码

⽅法⼆:⽤zip命令对⽂件加密压缩和解压

压缩:

zip -re filename 回车,输⼊2次密码

zip -rP passwork filename passwork是要输⼊的密码

解压:

unzip 按提⽰输⼊密码 unzip -P passwork passwork是要解压的密码,这个不会有提⽰输⼊密码的操作

====================================================分卷===================================================

  

rar a -m5 -v12m myarchive myfiles # 最⼤限制为 12M

  rar e #解压

  分卷压缩

  ubuntu下没有默认安装rar,可以通过 sudo apt-get install rar,sudo apt-get install unrar 来安装rar.

  安装过后,使⽤以下命令进⾏分卷压缩:

  rar a -vSIZE 压缩后的⽂件名 被压缩的⽂件或者⽂件夹

  例如:rar a -v50000k eclipse

  此命令即为对eclipse⽂件夹进⾏分卷压缩,每卷的⼤⼩为50000k,压缩后的⽂件名为

  

  举例说明:

  要将⽬录logs打包压缩并分割成多个1M的⽂件,可以⽤下⾯的命令:

  tar cjf - logs/ |split -b 1m - 2.

  完成后会产⽣下列⽂件:

  , ,

  要解压的时候只要执⾏下⾯的命令就可以了:

  cat 2.a* | tar xj

  再举例:

  要将⽂件分包压缩成500 bytes的⽂件:

  tar czf - | split -b 500 -

  最后要提醒但是那两个"-"不要漏了,那是tar的ouput和split的input的参数。

  3、⽤7z

 

同样⽤以上例⼦

  在film上层⽬录操作,保留film⽬录名

  压缩: 7z a film.7z film -v80m

  解压到当前⽬录: 7z x film.7z.001

  解压到⽬录a: mkdir a && cd a && 7z x ../film.7z.001

  或者 7z -oa x film.7z.001

  不保留film⽬录名

  压缩 cd film && find . | xargs 7z a film.7z -v80m

  解压 7z -oa x film.7z.001

  单纯采⽤7z的话,⽂件的权限(拥有者)属性会丢失, 采⽤如下办法则可以保留:

  压缩:

  tar cf - film | 7z a -si .7z -v80m

  解压缩:

  7z x -so .7z.001 | tar xf -