gzip、bzip、xz都不能压缩目录;
compress/uncompress,.Z(已经不用)
gzip/gunzip/zcat命令,.gz
gizp [options] ... file ...不能压缩目录;
-d:解压缩,当于gunzip;
-#:指定压缩比,1-9,默认6,数字越大压缩比越大;
-c:将压缩结果,输出到标准输出;一般重定向到一个文件里(实现压缩不删除原文件的方式);
gzip -c FILE > /PATH/TO/SOMEFILE.gz
gunzip filename.gz:还原文件后压缩文件也会被删除;
zcat filename.gz:不用解压缩直接查看压缩后的文本内容;
例如:
]# gzip ex1.sh:压缩后删除原文件;
]# zcat ex1.sh.gz:不解压,查看文件内容(文本非常大,不建议使用);
]# gunzip ex1.sh.gz=gzip -d ex1.sh.gz:解压后,删除原文件;
]# gzip -c ex1.sh > ./gzip1.test.gz:将文件压缩后保存至当前目录并命名为gzip1.test.gz(实现压缩不删除原文件的方式)
bzip2/bunzip2/bzcat命令,.bz2(比gzip压缩比大)
bzip2 [options] ... file ...不能压缩目录;
-d:解压缩,当于bzip2;
-#:指定压缩比,1-9,默认6,数字越大压缩比越大;
-k:压缩后,保留原文件;
bzip2 -k FILE...
bunzip2 filename.bz2:还原文件后压缩文件也会被删除;能自动识别.bz2文件;
bzcat FILE.bz2:不用解压缩直接查看压缩后的文本内容;
例如:
]# bzip2 ex1.sh
]# bzcat ex1.sh.bz2
]# bunzip2 ex1.sh.bz2=bzip2 -d ex1.sh.bz2
]# bzip2 -k ex1.sh
xz/unxz/xzcat命令,.xz(大幅提升压缩比)
xz [options] ... file ...不能压缩目录;
-d:解压缩,当于gunzip;
-#:指定压缩比,1-9,默认6,数字越大压缩比越大;
-k:压缩后,保留原文件;
解压和查看压缩后的文本内容命令格式都类似;
例如:
]# xz ex1.sh
]# xzcat ex1.sh.xz
]# unxz ex1.sh.xz=xz -d ex1.sh.xz
]# xz -k ex1.sh
lzma/unlzma,.lzma
zip/unzip
gzip,bzip2,xz都只能压缩文件,不能压缩目录;
归档:tar,cpio,把多个文件打包合并成一个文件,一般和压缩搭配使用;
tar命令:归档,GNU版本的tar
tar [options] ... file ...
选项可以省略-横杠;都必须带f选项,且写在其它选项后面;
-f /PATH/TO/SOMEFILES.tar:指定归档文件名;
(1)创建归档:(不删除原文件)
-c:创建归档;
-v:显示过程;
例如:
]# tar cf ./tar.test.tar ./*
(2)展开归档:(不删除原文件)
-x:展开归档;
tar -x -f /PATH/TO/SOMEFILES.tar
tar -xf /PATH/TO/SOMEFILES.tar
-C /PATH/TO/SOMEDIR:指定目录;一般用于解压;
例如:
]# tar -xf root.tar:展开至当前目录;
]# tar -xf root.tar -C ./test/:展开至指定test目录下;
(3)不展开归档查看文件列表:
-t:查看归档文件里的文件列表;
tar -tf /PATH/TO/SOMEFILES.tar
例如:
]# tar tf root.tar
(4)归档后压缩(不删除原文件)
tar展开归档压缩可自动识别压缩类型,即可省略压缩字符;
-z:使用gzip归档压缩;
-zcf /PATH/TO/SOMEFILES.tar.gz FILE...|DIR:创建归档后压缩;
-zxf /PATH/TO/SOMEFILES.tar:解压缩并展开归档;
-C /PATH/TO/SOMEDIR:指明展到开指定的目录下;
例如:
]# tar zcf /tmp/test.tar.gz ./test:将test目录归档压缩到tmp目录下名为test.tar.gz;
]# tar xf test.tar.gz:在当前目录下解压缩并展开归档;
]# tar xf /root/test/test.tar.gz -C /tmp/:指定归档压缩文件至指定目录下;
-j:使用bzip2归档压缩;
-jcf /PATH/TO/SOMEFILES.tar FILE...|DIR:归档压缩;
-jxf /PATH/TO/SOMEFILES.tar:展开归档解压缩;
-C /PATH/TO/SOMEDIR:指明展到开指定的目录下;
例如:
]# tar jcf /tmp/test.tar.bz2 ./test
]# tar -xf /tmp/test.tar.bz2 -C /root/test/
-J:使用xz归档压缩;
-Jcf /PATH/TO/SOMEFILES.tar FILE...|DIR:归档压缩;
-Jxf /PATH/TO/SOMEFILES.tar:展开归档解压缩;
zip/unzip命令,归档压缩:后缀名.zip
zip 指定压缩文件名 指定要压缩的文件或目录
例如:
]# zip tmp.zip ./*
cpio命令:
功能:复制文件或到归档
cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,可以解压以“cpio”或者“tar”结尾的文件
cpio [选项] > 文件名或者设备名
cpio [选项] > 文件名或者设备名
选项:
-o :将文件拷贝打包成文件或者将文件输出到设备上 -O filename :输出到指定的归档文件名
-A :向已存在的归档文件中追加文件
-i :解包,将打包文件解压或将设备上的备份还原到系统
-I filename :对指定的归档文件名解压
-t :浏览,查看文件内容或者输出到设备上的文件内容
-F filename :使用指定的文件名替代标准输入或输出
-d :解包生成目录,在cpio还原时,自动的建立目录
-v :显示打包过程中的文件名称