Linux 文件目录压缩与解压命令
2021/12/31 7:09:38
本文主要是介绍Linux 文件目录压缩与解压命令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Linux 文件目录压缩与解压命令
compress压缩: compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出 ".Z" 的扩展名。
[root@localhost ~]# yum install -y ncompress [root@localhost ~]# compress --help 命令语法:[ compress [选项] 文件或目录 ] -f #强制覆盖掉目标文件 -c #将结果送到标准输出,无文件被改变 -r #递归的操作方式 -b 数字 #压缩效率是一个介于9~16 -d #对文件进行解压缩而非压缩 -v #显示指令执行过程
通过使用compress -c
命令压缩一个文件.
[root@localhost ~]# ls -lh total 944K -rwxr-xr-x. 1 root root 942K Sep 26 2017 bash [root@localhost ~]# compress -c bash > bash.Z [root@localhost ~]# ls -lh total 1.6M -rwxr-xr-x. 1 root root 942K Sep 26 2017 bash -rw-r--r--. 1 root root 596K Nov 16 06:38 bash.Z
通过使用compress -d
命令解压一个文件.
[root@localhost ~]# ls -lh total 596K -rw-r--r--. 1 root root 596K Nov 16 06:38 bash.Z [root@localhost ~]# compress -d bash.Z [root@localhost ~]# ls -lh total 944K -rw-r--r--. 1 root root 942K Nov 16 06:38 bash
zip压缩: zip命令压缩的拓展名.zip 各种系统都支持zip的压缩格式,所以在一定程度上,是可以通用的.
[root@localhost ~]# yum install -y zip unzip [root@localhost ~]# zip --help 命令语法:[ zip/unzip [选项] 文件或目录 ] -r #递归压缩,连同子目录一同压缩 -S #包含系统和隐藏文件 -v #显示指令执行过程 -q #不显示指令执行过程
通过使用zip -r -v
命令将/etc/目录全部内容压缩.
[root@localhost ~]# zip -r -v lyshark.zip /etc/ [root@localhost ~]# ls -lh total 12M -rw-r--r--. 1 root root 12M Nov 16 09:46 lyshark.zip
使用unzip -l
命令查询一个压缩包中的文件.
[root@localhost ~]# unzip -l lyshark.zip
使用unzip -d
命令将文件解压到指定目录.
[root@localhost ~]# unzip lyshark.zip -d /tmp/ [root@localhost ~]# ls -lh /tmp/ total 12K drwxr-xr-x. 84 root root 8.0K Nov 6 11:02 etc
gzip压缩: gzip是Linux系统默认支持的压缩格式,其可以与tar命令结合使用,gzip对文本文件有60%~70%的压缩率。
[root@localhost ~]# gzip --help 命令语法:[ gzip/zcat [选项] 文件或目录 ] -a #使用ASCII文字模式 -d #解开压缩文件 -f #强行压缩文件 -l #列出压缩文件的相关信息 -n #压缩时,不保存原来的文件名称及时间戳 -N #压缩时,保存原来的文件名称及时间戳 -q #不显示警告信息 -r #递归处理 -v #显示指令执行过程
通过使用gzip -rv
命令压缩一个文件.
[root@localhost ~]# ls -lh total 944K -rwxr-xr-x. 1 root root 942K Sep 26 2017 bash [root@localhost ~]# gzip -rv bash bash: 51.2% -- replaced with bash.gz [root@localhost ~]# ls -lh total 460K -rwxr-xr-x. 1 root root 460K Sep 26 2017 bash.gz
通过使用gzip -l/zcat -l
命令查询一个文件.
[root@localhost ~]# gzip -l bash.gz compressed uncompressed ratio uncompressed_name 470300 964544 51.2% bash [root@localhost ~]# zcat -l bash.gz compressed uncompressed ratio uncompressed_name 470300 964544 51.2% bash
通过使用gzip -dv / zcat
命令解压一个文件.
[root@localhost ~]# ls -lh total 460K -rwxr-xr-x. 1 root root 460K Sep 26 2017 bash.gz [root@localhost ~]# gzip -dv bash.gz bash.gz: 51.2% -- replaced with bash [root@localhost ~]# zcat -d bash.gz >bash_zcat
bzip2压缩: bzip2命令用于创建和管理,包括解压缩,使用这个命令必须要先安装,因为这个命令并没有集成安装.
[root@localhost ~]# yum install -y bzip2 [root@localhost ~]# bzip2 --hlep 命令语法:[ bzip2/bzcat [选项] 文件或目录 ] -c #输出压缩解压过程 -d #执行解压缩 -k #解压后保留原始文件 -v #压缩或解压时详细输出 -z #强制执行压缩
通过使用bzip2 -kzv
命令将bash文件压缩.
[root@localhost ~]# ls -lh total 944K -rwxr-xr-x. 1 root root 942K Sep 26 2017 bash [root@localhost ~]# bzip2 -kzv bash bash: 2.164:1, 3.697 bits/byte, 53.79% saved, 964544 in, 445742 out.
通过使用bzip2 -kdv
命令解压缩bash.bz2文件.
[root@localhost ~]# ls -lh total 436K -rwxr-xr-x. 1 root root 436K Sep 26 2017 bash.bz2 [root@localhost ~]# bzip2 -kdv bash.bz2 bash.bz2: done
tar 归档并压缩: 该命令常常与gz,bz2等压缩命令结合使用。
[root@localhost ~]# tar --hlep 命令语法:[ tar [选项] 文件或目录 ] -c #新建打包 -t #查看打包文件 -x #解压打包文件 -j #通过bz2进行压缩与解压 -z #通过gz进行压缩与解压 -J #通过xz进行压缩与解压 -v #显示压缩与解压过程 -C #指定解压到哪里
通过使用tar -czvf xzvf tvf
命令压缩解压与查询.
[root@localhost ~]# tar -czvf lyshark.tar.gz /etc/* #将/etc/*目录下的内容压缩成lyshark.tar.gz [root@localhost ~]# tar -tvf lyshark.tar.gz #查询包中的内容 [root@localhost ~]# tar -xzvf lyshark.tar.gz -C /etc/ #将压缩包,解压到/etc/目录下
通过使用tar -cjvf xjvf tvf
命令压缩解压与查询.
[root@localhost ~]# tar -cjvf lyshark.tar.bz2 /etc/* #将/etc/*目录下的内容压缩成lyshark.tar.bz2 [root@localhost ~]# tar -tvf lyshark.tar.bz2 #查询包中的内容 [root@localhost ~]# tar -xjvf lyshark.tar.bz2 -C /etc/ #将压缩包,解压到/etc/目录下
通过使用tar -cJvf xJvf tvf
命令压缩解压与查询.
[root@localhost ~]# tar -cJvf lyshark.tar.xz /etc/* #将/etc/*目录下的内容压缩成lyshark.tar.xz [root@localhost ~]# tar -tvf lyshark.tar.xz #查询包中的内容 [root@localhost ~]# tar -xJvf lyshark.tar.xz -C /etc/ #将压缩包,解压到/etc/目录下
cpio块级压缩: cpio用来建立或者还原备份的工具程序,cpio命令可以备份任何东西包括设备文件。
[root@localhost ~]# cpio --help 压缩语法:[ cpio –cvBo > [文件|设备] ] -c #使用portable format存储方式 -v #显示过程 -B #设定输入输出块为512bytes -o #进入copy-out模式(压缩) 查看语法:[ cpio –ivct < [cpio文件] ] -i #将数据从文件复制到系统中 -c #使用portable format存储方式 -t #查看CPIO压缩包内容 还原语法:[ cpio –idvcu < [cpio文件] ] -i #进入copy-in模式(解压) -d #恢复到指定位置(视压缩方式恢复) -v #显示过程 -c #使用portable format存储方式 -u #替换所有文件,无提示
使用cpio -cvBo
命令,来备份/etc/目录
[root@localhost ~]# find /etc/ -print | cpio -cvBo > /root/etc.cpio [root@localhost ~]# ls -lh total 109M -rw-r--r--. 1 root root 109M Nov 16 10:50 etc.cpio
使用cpio -cvBo
命令,将/etc/目录下的内容备份到/sdb磁盘
[root@localhost ~]# find /etc/ -print | cpio -cvBo > /dev/vdb
使用cpio -ivct
命令查询,压缩包内容
[root@localhost ~]# ls -lh total 109M -rw-r--r--. 1 root root 109M Nov 16 10:50 etc.cpio [root@localhost ~]# cpio -ivct < etc.cpio
使用cpio -idvcu
还原文件到/etc/目录
[root@localhost ~]# ls -lh total 109M -rw-r--r--. 1 root root 109M Nov 16 10:50 etc.cpio [root@localhost ~]# cpio -idvcu < /root/etc.cpio
制作ISO镜像: mkisofs命令用来将指定的目录与文件做成ISO 9660格式的映像文件。
[root@localhost ~]# mkisofs --help 命令语法:[ mkisofs [选项] 文件或目录 ] -o #后面接镜像名 -r #连同文件属性一起记录 -v #显示构建过程 -m #排除指定文件 -V #新建volume
通过mkisofs
制作一个镜像将/etc目录制作成lyshark.iso.
[root@localhost ~]# mkisofs -r -v -o /root/lyshark.iso /etc/ [root@localhost ~]# ls -lh total 123M -rw-r--r--. 1 root root 123M Nov 16 11:14 lyshark.iso
磁盘测速与拷贝: dd命令用于磁盘测速与备份,该命令很底层所以可以完成很多备份工具无法完成的功能。
[root@localhost ~]# dd --help 备份语法:[ dd [if=源文件] [of=输出] [count=计数] ] if=文件名 #输入文件名 of=文件名 #输出文件名 bs=bytes #读入计数 count=blocks #仅拷贝blocks个块 /dev/zero #是字符设备会不断返回0值字节 /dev/null #空设备,相当于一个垃圾桶
通过使用dd进行磁盘测速,测磁盘读写速度(可分别测试1024,2048,4096,8192)
[root@localhost ~]# dd if=/dev/zero of=/dev/null bs=1024 count=10000 10000+0 records in 10000+0 records out 10240000 bytes (10 MB) copied, 0.00852247 s, 1.2 GB/s
通过使用dd进行磁盘常规备份
#将本地的 /dev/sda 整盘备份到 /dev/hdd [root@localhost ~]# dd if=/dev/sda /of=/dev/hdd #将 /dev/sda 全盘数据备份成指定路径的image文件 [root@localhost ~]# dd if=/dev/sda of=/tmp/image #将image备份文件恢复到指定盘/dev/sdb [root@localhost ~]# dd if=/tmp/image of=/dev/sdb #备份 /dev/sda 全盘数据,并利用gzip工具进行压缩,保存到/tmp/image.gz [root@localhost ~]# dd if=/dev/sda | gzip > /tmp/image.gz #恢复,将压缩的备份文件 /tmp/image.gz ,恢复到制定盘 /dev/sdb [root@localhost ~]# gizp -dc /tmp/image.gz | dd of=/dev/sdb
通过使用dd命令备份磁盘MBR,与恢复分区MBR.
#备份MBR,备份磁盘 /dev/sda 开始的512个字节大小的MBR信息到指定文件/tmp/mbr512 #其中:count=1 指仅拷贝一个块;bs=512 指块大小为512个字节 [root@localhost ~]# dd if=/dev/sda of=/tmp/mbr512 count=1 bs=512 1+0 records in 1+0 records out 512 bytes (512 B) copied, 0.00015245 s, 3.4 MB/s #恢复MBR,将备份 /tmp/mbr512 的MBR信息写到磁盘开始部分 /dev/sda [root@localhost ~]# dd if=/tmp/mbr512 of=/dev/sda 1+0 records in 1+0 records out 512 bytes (512 B) copied, 0.000201242 s, 2.5 MB/s
通过使用dd命令拷贝内存数据与光盘数据到指定位置。
#拷贝内存内容到磁盘 [root@localhost ~]# dd if=/dev/mem of=/tmp/mem_image bs=1024(指定块大小为1k) dd: error reading ‘/dev/mem’: Bad address 632+0 records in 632+0 records out 647168 bytes (647 kB) copied, 0.001591 s, 407 MB/s #拷贝光盘内容到指定文件夹,并保存为/tmp/LyShark.iso文件 [root@localhost ~]# dd if=/dev/sr0 of=/tmp/LyShark.iso 1249+0 records in 1248+0 records out 638976 bytes (639 kB) copied, 0.368021 s, 1.7 MB/s #利用随机数填充磁盘,彻底销毁磁盘 /dev/sdb 数据 [root@localhost ~]# dd if=/dev/urandom of=/dev/sdb
这篇关于Linux 文件目录压缩与解压命令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法