gzip 命令

gzip 是最简单的文件压缩命令,基本语法如下

gzip [options] [filename_to be compress]

直接使用

直接使用 gzip不保留 原始文件,生成一份压缩文件 (自动命名为源文件名+. gz)

gzip ./tbc.txt
 
-rw-r--r-- 1 zhoux zhoux  21K Dec  5 13:09 tbc.1.txt.gz
-rw-r--r-- 1 zhoux zhoux 151K Dec  5 13:18 tbc.copy.txt
-rw-r--r-- 1 zhoux zhoux 151K Dec  5 13:07 tbc.txt

-v 选项

-v 选项可显示文件的压缩率,感觉没有什么用

zhoux@westnorth:~/linux_practice/compress$ gzip -v  tbc.1.txt
tbc.1.txt:       84.7% -- replaced with tbc.1.txt.gz

-c 选项

-c 将会保留源文件,生成压缩文件,并直接输出至终端

这将导致终端乱码,所以会与重定向连用

除了一定要保留源文件的情况,这个命令没有什么用

gzip -c ./tbc.txt >> tbc.txt.gz
 
-rw-r--r-- 1 zhoux zhoux 151K Dec  5 13:07 tbc.txt
-rw-r--r-- 1 zhoux zhoux  26K Dec  5 13:15 tbc.txt.gz
#可见文件已经被压缩,源文件没有消失

目录压缩

zip 命令

gzip 无法对目录进行压缩,但 zip 可以对目录进行压缩

写法与 gzip 略有不同

zip [压缩后文件名] [被压缩文件名]

unzip 可以进行解压缩,与 gzip 一样

Warning

zcat 只能解码 .gz 格式的压缩文件

查看 .gz 文件

压缩产生的文件直接查看将导致乱码(不直接将压缩文件输出至终端的原因),故无法直接查看

对此可以用到 zcat 命令

zhoux@westnorth:~/linux_practice/compress$ zcat tbc.1.txt.gz |head -5
i love my cat
/home/zhoux/
/home/zhoux/linux_practice
/home/zhoux/linux_practice/xibei.dir
/home/zhoux/linux_practice/xibei.dir/log