【Linux学习笔记】12:压缩和解压缩命令(有关.zip .gz .bz2)
2017-08-25 12:39
666 查看
windows中的压缩包格式常见的有.zip,.rar,.7z等,在Linux中常见的压缩格式有.zip,.gz,.bz2,.tar.gz,.tar.bz2等。不同的压缩格式的压缩和解压命令是不同的。
*压缩文件:
*压缩目录:
压缩文件名不写扩展名也可以,因为Linux不区分扩展名,但是这样没有扩展名的文件易读性很差,很容易分不清这个文件是不是压缩文件,所以应当写清楚扩展名。
它是个空文件,所以压缩后体积变了0%。
压缩文件不一定比原文件小,这是正常的,因为要有压缩格式的开销。
尝试压缩一个装有空文件的目录:
这回体积变小了:
*解压缩:
尝试解压一个文件:
*压缩文件:
压缩为.gz格式的压缩文件,且源文件会消失。
压缩为.gz格式的压缩文件,且源文件被保留。gzip命令本身是做不到的,这是用输出重定向的方式保留了源文件。”>”的意思是把命令的结果写入指定文件中去,如把ll命令结果写道shuchu中去:
“-c”是表示把压缩的结果输出到了屏幕上去(可以”gzip -c 文件”试一下),配合”>”输出重定向就实现了压缩并保留源文件的效果。
*压缩目录(下的子文件):
这表示在目录里压缩替换目录下的所有子文件,但不能压缩目录,如:
*解压缩
或者
尝试解压文件:
可以看到原来的压缩包会消失。
尝试解压目录(要加-r):
可以看到目录中的内容会被解压。
*压缩文件:
选项:-k表示保留源文件。
如:
又如:
*解压:
或
选项:-k保留压缩文件。
如:
.zip
windows和Linux下的zip文件是可以通用的。*压缩文件:
zip 压缩文件名 源文件
*压缩目录:
zip -r 压缩文件名 源目录
压缩文件名不写扩展名也可以,因为Linux不区分扩展名,但是这样没有扩展名的文件易读性很差,很容易分不清这个文件是不是压缩文件,所以应当写清楚扩展名。
[root@localhost ~]# zip lzhgb.zip lzhgb adding: lzhgb (stored 0%)
它是个空文件,所以压缩后体积变了0%。
压缩文件不一定比原文件小,这是正常的,因为要有压缩格式的开销。
尝试压缩一个装有空文件的目录:
[root@localhost ~]# zip -r mulu.zip mulu adding: mulu/ (stored 0%) adding: mulu/test1 (stored 0%) adding: mulu/test2 (stored 0%)
这回体积变小了:
*解压缩:
unzip 压缩文件
尝试解压一个文件:
[root@localhost ~]# rm lzhgb rm:是否删除普通空文件 "lzhgb"?y [root@localhost ~]# unzip lzhgb.zip Archive: lzhgb.zip extracting: lzhgb [root@localhost ~]# ll 总用量 56 -rw-------. 1 root root 1392 8月 22 18:22 anaconda-ks.cfg -rw-r--r--. 1 root root 27016 8月 22 18:22 install.log -rw-r--r--. 1 root root 7572 8月 22 18:20 install.log.syslog -rw-r--r--. 1 root root 0 8月 25 04:57 lzhgb -rw-r--r--. 1 root root 160 8月 25 19:10 lzhgb.zip drwxr-xr-x. 2 root root 4096 8月 25 19:17 mulu -rw-r--r--. 1 root root 456 8月 25 19:18 mulu.zip
.gz
这个格式是linux专有的,但是也可以在windows中解压缩。*压缩文件:
gzip 源文件
压缩为.gz格式的压缩文件,且源文件会消失。
gzip -c 源文件 > 压缩文件
压缩为.gz格式的压缩文件,且源文件被保留。gzip命令本身是做不到的,这是用输出重定向的方式保留了源文件。”>”的意思是把命令的结果写入指定文件中去,如把ll命令结果写道shuchu中去:
[root@localhost ~]# touch shuchu [root@localhost ~]# ll > shuchu [root@localhost ~]# cat shuchu 总用量 52 -rw-------. 1 root root 1392 8月 22 18:22 anaconda-ks.cfg -rw-r--r--. 1 root root 27016 8月 22 18:22 install.log -rw-r--r--. 1 root root 7572 8月 22 18:20 install.log.syslog -rw-r--r--. 1 root root 26 8月 25 04:57 lzhgb.gz drwxr-xr-x. 2 root root 4096 8月 25 19:17 mulu -rw-r--r--. 1 root root 0 8月 25 19:33 shuchu
“-c”是表示把压缩的结果输出到了屏幕上去(可以”gzip -c 文件”试一下),配合”>”输出重定向就实现了压缩并保留源文件的效果。
*压缩目录(下的子文件):
gzip -r 目录
这表示在目录里压缩替换目录下的所有子文件,但不能压缩目录,如:
[root@localhost ~]# gzip -r mulu [root@localhost ~]# ll 总用量 56 -rw-------. 1 root root 1392 8月 22 18:22 anaconda-ks.cfg -rw-r--r--. 1 root root 27016 8月 22 18:22 install.log -rw-r--r--. 1 root root 7572 8月 22 18:20 install.log.syslog -rw-r--r--. 1 root root 26 8月 25 04:57 lzhgb.gz drwxr-xr-x. 2 root root 4096 8月 25 19:36 mulu -rw-r--r--. 1 root root 351 8月 25 19:33 shuchu [root@localhost ~]# cd mulu/ [root@localhost mulu]# ll 总用量 8 -rw-r--r--. 1 root root 26 8月 25 19:16 test1.gz -rw-r--r--. 1 root root 26 8月 25 19:17 test2.gz
*解压缩
gzip -d 压缩文件
或者
gunzip 压缩文件
尝试解压文件:
[root@localhost ~]# ll 总用量 56 -rw-------. 1 root root 1392 8月 22 18:22 anaconda-ks.cfg -rw-r--r--. 1 root root 27016 8月 22 18:22 install.log -rw-r--r--. 1 root root 7572 8月 22 18:20 install.log.syslog -rw-r--r--. 1 root root 26 8月 25 04:57 lzhgb.gz drwxr-xr-x. 2 root root 4096 8月 25 19:36 mulu -rw-r--r--. 1 root root 351 8月 25 19:33 shuchu [root@localhost ~]# gunzip lzhgb.gz [root@localhost ~]# ll 总用量 52 -rw-------. 1 root root 1392 8月 22 18:22 anaconda-ks.cfg -rw-r--r--. 1 root root 27016 8月 22 18:22 install.log -rw-r--r--. 1 root root 7572 8月 22 18:20 install.log.syslog -rw-r--r--. 1 root root 0 8月 25 04:57 lzhgb drwxr-xr-x. 2 root root 4096 8月 25 19:36 mulu -rw-r--r--. 1 root root 351 8月 25 19:33 shuchu
可以看到原来的压缩包会消失。
尝试解压目录(要加-r):
[root@localhost ~]# ll mulu/ 总用量 8 -rw-r--r--. 1 root root 26 8月 25 19:16 test1.gz -rw-r--r--. 1 root root 26 8月 25 19:17 test2.gz [root@localhost ~]# gunzip -r mulu [root@localhost ~]# ll mulu/ 总用量 0 -rw-r--r--. 1 root root 0 8月 25 19:16 test1 -rw-r--r--. 1 root root 0 8月 25 19:17 test2
可以看到目录中的内容会被解压。
.bz2
这个命令是不能压缩目录的。*压缩文件:
bzip2 [-k] 源文件
选项:-k表示保留源文件。
如:
[root@localhost ~]# bzip2 lzhgb
又如:
[root@localhost ~]# bzip2 -k shuchu
*解压:
bzip2 [-k] -d 压缩文件
或
bunzip2 [-k] 压缩文件
选项:-k保留压缩文件。
如:
[root@localhost ~]# bunzip2 lzhgb.bz2
相关文章推荐
- 【Linux学习笔记】13:压缩和解压缩命令(有关.tar.gz .tar.bz2)
- linux学习笔记--基本命令的学习--压缩与解压缩命令
- linux学习笔记之帮助命令与压缩解压缩命令
- Linux压缩解压缩命令学习笔记
- Linux 学习笔记_3_Linux常用命令_5_压缩解压缩命令
- Linux学习笔记——Linux压缩解压缩命令详解
- 【linux学习笔记六】压缩 解压缩命令
- Linux学习-常见压缩/解压缩及打包命令
- linux——压缩解压命令学习简单笔记
- linux命令学习(四)压缩,解压缩
- 【Linux学习笔记】六、压缩解压命令
- 每天一个 linux 命令(12):more 命令---学习笔记
- [Linux学习笔记] Linux常用命令 - 压缩,解压命令
- 写得蛮好的linux学习笔记(压缩命令,vi一般用法,认识SHELL,正规表示法)
- 写得蛮好的linux学习笔记(三)(压缩命令)
- Linux学习笔记--打包压缩命令
- 写得蛮好的linux学习笔记三-压缩命令(收藏)
- linux命令学习笔记(12):more命令
- Linux学习笔记-与系统管理有关的命令[转帖]
- Centos学习笔记 linux 常用命令:压缩解压命令