课程评价 (0)

请对课程作出评价:
0/300

学员评价

暂无精选评价
3分钟

压缩、解压缩及归档工具-2

解包解压缩

unzip sysconfig.zip

cat /var/log/messages | zip messages –

cat messages | zip m1 –

unzip -p message > message

文件打包工具

tar

tar命令后续可以不用加-比较特殊

基础用法:建立打包文件data.tar

tar -cpvf data.tar /data

创建归档

tar -cpvf FILE.tar FILE…

c代表创建 f代表目录 v代表可看过程 p代表保留原有属性

tar -cpvf data.tar /data

查看文件大小

du -sh /data/

追加文件至归档: 注:不支持对压缩文件追加

tar -r -f 1.tar /data/sudo.conf /data/sudoers

预览已打包文件夹用t

tar tvf data.tar

解打包文件夹用 x

tar xvf data.tar

解压缩直接用以下命令,不用理会后缀名

tar xvf data.tar.gz -C /mnt

结合压缩工具实现:归档并压缩

-j: bzip2, -z: gzip, -J: xz

重要:在打包的同时压缩

tar -zcpvf data.tar.gz /data (打包成gz格式的压缩文件)

tar -jcpvf data.tar.bz2 /data (打包成bzip2格式的压缩文件)

tar -Jcpvf data.tar.xz /data (打包成xz格式的压缩文件)

-T选项指定输入文件,-X选项指定包含要排除的文件列表

tar zcvf mybackup.tgz -T /root/includefilelist -X /root/excludefilelist

(tgz是指tar.gz)

建立文件 list.txt,内容为要打包的文件如

/etc/shadow

/boot/

建立文件exlist.txt,内容为不要打包的文件

/etc/.bashrc

然后执行

tar Jcvf list.tar.xz -T list.txt -X exlist.txt

打包某个目录下的全部子目录和文件并排除某个特定的目录 例如

tar cvpf etc.tar –exclude=/etc/sysconfig –exclude=/etc/skel /etc

分割大的 tar 文件为多份小文件:

split –b Size –d tar-file-name prefix-name

split -b 1M –d mybackup.tgz mybackup-parts

split -b 1M mybackup.tgz mybackup-parts

例:有大小为95M的 list.tar.xz压缩文件包把它切割成10M大小一个

split -b 10M -d list.tar.xz a.tar

生成的是a.tar00 a.tar01 a.tar03…a.tar09

如果不加 -d生成的后缀名会变成a.taraa a.tarab a.tarac…a.taraj

合并:

cat mybackup-parts* > mybackup.tar.gz

例:

cat a.tar0* > a.tar.xz

cpio

功能:复制文件从或到归档

cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以

解压以“.cpio” 或者“.tar” 结尾的文件

cpio 选项 > 文件名或者设备名

cpio 选项 < 文件名或者设备名

选项

-o 将文件拷贝打包成文件或者将文件输出到设备上

-i 解包,将打包文件解压或将设备上的备份还原到系统

-t 预览,查看文件内容或者输出到设备上的文件内容

-v 显示打包过程中的文件名称。

-d 解包生成目录,在cpio还原时,自动的建立目录

-c 一种较新的存储方式