一、压缩、解压缩命令
1、压缩格式:gz, bz2, xz, zip, Z
2、压缩算法:算法不同,压缩比也会不同;
3、原始的压缩命令:compress: FILENAME.Z
解压缩:uncompress
4、压缩成.gz格式的文件(仅压缩文件)
a)gzip /PATH/TO/SOMEFILE:压缩完成后会删除原文件
-d:解压缩,相当于gunzip命令;
-#:指定压缩比,范围是1-9,默认是6;
b)gunzip: 解压缩;
gunzip /PATH/TO/SOMEFILE.gz: 解压完成后会删除原文件
c)zcat /PATH/TO/SOMEFILE.gz:不解压的情况,查看已压缩的文本文件的内容;
5、压缩成.bz2格式的文件(仅压缩文件)
比gzip有着更大压缩比的压缩工具,使用格式近似
a)bzip2 /PATH/TO/SOMEFILE:解压完成后会删除原文件
-d:解压缩,相当于bunzip2命令
-#: 1-9,默认是6
-k: 压缩时保留原文件
b)bunzip2 /PATH/TO/SOMEFILE.bz2 :解压缩;
c)bzcat :不解压的情况,查看已压缩的文本文件的内容;
6、压缩成.xz格式的文件(仅压缩文件)
a)xz /PATH/TO/SOMEFILE
-d :解压缩,相当于unxz命令
-#: 1-9, 默认是6
-k: 压缩时保留原文件
b)unxz
xzdec
c)xzcat
二、归档命令
1、zip: 既归档又压缩的工具
a)zip FILENAME.zip FILE1 FILE2 ...: 压缩后不删除原文件
b)unzip FILENAME.zip 解压缩
2、archive: 归档,归档本身并不意味着压缩
3、tar: 只归档不压缩工具, 格式是.tar
a)-c: 创建归档文件
b)-f FILE.tar: 要操作的归档文件
如:tar -cf test.tar test*.txt
c)-x: 展开归档
如:tar -xf test.tar
d)--xattrs: 归档时,保留文件的扩展属性信息
e)-t: 不展开归档,直接查看归档了哪些文件
如:tar -tf test.tar
f)-zcf: 归档并调用gzip压缩
-zxf: 调用gzip解压缩并展开归档,-z选项可省略
g)-jcf: 归档并调用bzip2压缩
-jxf:调用bzip2解压缩并展开归档,-j选项可省略
h)-Jcf: xz
-Jxf:
4、cpio: 归档工具
练习:写一个脚本
从键盘让用户输入几个文件,脚本能够将此几个文件归档压缩成一个文件;
read:
-p “PROMPT": 给出提示
-t time 超时时间
参考答案:
#!/bin/bash
#
read -p "Three Filename:" FILE1 FILE2 FILE3
read -p "DES:" DEST
read -p "Compress[gzip|bzip2|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
转载于:https://blog.51cto.com/zkhylt/1405255