1、压缩&解压缩
(zip下载)
mount /dev/sr0 /media/
yum mackcache
yum install zip
1.1、zip&uzip
- zip 压缩文件名 (test.zip) 要被压缩的文件名
- zip -m test1.zip test.txt 把test2.txt添加到tset1.zip
- zip -d test1.zip test2.txt 把test2.txt从test1.zip删除
- zip test1.zip *.txt -x test10.txt 除test10以外,将所有.txt文件全部压缩到test1.zip
- zip -r /dir 递归压缩
- unzip test1.zip
- unzip test1.zip -d /压缩目录
- unzip -v test1.zip 不压缩,查看压缩内容
1.2、gzip,gunzip
- gzip 被压缩的文件 压缩后,源文件不保留
- gzip -c test.txt >test.txt.gz 压缩,保留原文件
- gzip -r 目录 压缩目录下的所有内容
- gunzip test.txt.gz
- gunzip -c test.txt.gz > /root/test.txt 解压缩到特定的目录下,并且保留源文件
- gunzip === gzip -d
- 不解压查看
[root@localhost test1]# zless test5.txt.gz
[root@localhost test1]# zless test5.txt.gz
1.3、bzip2,bunzip2
- bzip2 被压缩的文件名 ,压缩后,源文件不保留
- bzip2 -c test.txt > test.txt.bz2 压缩,保留源文件
- bunzip2 test.txt.bz2
- bunzip2 === bzip2 -d
- 不解压查看
[root@localhost test1]# bzcat test5.txt.bz2
1.4、xz,unxz
- xz 被压缩的文件名 ,压缩后,源文件不保留
xz dir/* - unxz test.txt.xz
- xz -d test.txt.xz
xz -d dir/* - List itemxzcat test.txt.xz 查看压缩后的文件内容
1.5、tar(用在自己创建的文件)
- tar -cf etc.tar /etc/
-c 创建一个归档文件
-f 指向一个归档文件
/etc/ 归档文件 - tar -czf boot.tar.gz /boot/
-z 以gzip形式将打包的文件压缩 - tar -cjf boot.tar.bz2 /tmp/
-j bzip2的形式将打包的文件压缩 - tar -tf etc.tar
-t 查看归档文件内容 - tar --delete etc/hosts -f etc.tar
–delete 删除etc.tar下的 etc/hosts - tar -f etc.tar -r /root/anaconda-ks.cfg.bak
-r 向打包文件追加新内容 -r 要新加的内容 - tar tvf etc.tar |grep hosts
-v 查看详细内容 - tar xzf boot.tar.gz
-x 解压
-xz 解压gzip压缩到归档文件 - tar xjf boot.tar.bz
-xf 解压bzip2压缩的归档文件 - tar xjf tmp.tar.bz2 -C test/
-C 指定解压路径 - tar -czvf test.tar.gz file* --remove-files
–remove-file 打包压缩的同时删除原文件 - tar xzvf test.tar.gz && rm -rf test.txt.gz
&& 两步,前一步解压文件,后一步把源文件删除
1.6、cpio
(cpio用于系统文件归档与压缩)
- -t 看归档内容
- -F 指定归档文件
- -o: copy-out模式
- -A 向归档的文件中追加新文件
- -d 自动建立目录
- find ./ -depth |cpio -ov -F tree1.cpio
把当前的文件,归档到tree1.cpio,terr.cpio里面本身有 - find ./ -depth |cpio -ov -F /tmp/tree1.cpio
把当前文件归档到/tmp/目录下 - find ./ -depth -print0 |cpio -null -ov -F /tmp/tree.cpio
–null 解析空字符 - cpio -t -F tree.cpio 或者cpio -t < tree.cpio
查看tree.cpio下的归档内容 - cpio -t -F /tmp/home.cpio /root/*
查看home.cpio归档文件里的 /root/下的内容(没有隐藏文件) - cpio -t -F /tmp/home.cpio /root/.*
查看home.cpio归档文件里的 /root/下的内容(全隐藏文件) - cpio -t -F /tmp/home.cpio /root/{.,}
查看home.cpio归档文件里的 /root/下的内容(所有文件) - ls /root/test.txt |cpio -oA -F /tmp/home.cpio
向归档文件中追加文件 - find /boot-depth -print0 |cpio -oA -F /tmp/home.cpio
添加新目录 - cpio -idv -F /tmp/home.cpio
提取文件 - find~ -depth -print0 |cpio --null -pvd /tmp/abc
复制~下文件到/tmp/abc/root/