当前位置: 首页 > 科技观察

Linux中的解压缩命令:unzip

时间:2023-03-13 19:58:06 科技观察

unzip命令通常用于解压缩zip文件,但它可以做的远不止于此。在一些Linux发行版上,这个命令可能默认没有安装,所以需要先安装,可以使用包管理器,比如在Debian系统中:sudo我们来看看它的用法。Linux中的unzip命令unzip命令的语法非常简单:unzip[option]zip_file如果没有使用选项,那么它将解压缩整个给定的文件,请参见以下示例:unzipwebdesign.zipArchive:webdesign.zipinflating:339252-PAJF05-394.aiinflating:339252-PAJF07-322.epsinflating:339252-PALBTI-224.aiinflating:339252-PALBTL-394.epsinflating:339252-PALBTM-53.jpginflating:Licensefree.txtinflatingium.sometimes这可能不是我们想要什么。因为如果给定的压缩包文件太多,解压后,当前目录会被大量文件填满:ls339252-PAJF05-394.ai339252-PALBTI-224.ai339252-PALBTM-53。jpg'Licensepremium.txt'339252-PAJF07-322.eps339252-PALBTL-394.eps'Licensefree.txt'1、解压到某个目录一般我们想把文件解压到某个目录,然后目录通常与zip文件同名。您可以使用-d选项指定将文件提取(压缩)到目标目录:如果unzip不存在,将创建目标目录。但是不会创建嵌套目录。另外,目标目录(连同选项-d)也可以放在压缩文件的后面,但并不是所有的选项都可以放在命令后面。如下图:unzip2,不解压查看压缩文件内容。如果只想查看zip文件包的内容,不想解压,可以使用-l选项,这样我们就可以查看zip文件的内容Content:unzip会显示时间戳和大小输出文件列表中文件的字节数,如下:$unzip-lwebdesign.zipArchive:webdesign.zipLengthDateTimeName------------------------------2053582023-01-1823:14339252-PAJF05-394.ai9969062023-01-1823:14339252-PAJF07-322.eps2139682023-01-2000:00339252-PALBTI-224.ai10053622023-01-2000:00339252-PALBTL-394.eps3055312023-01-2500:003PALB-TMjpg14622023-01-2009:45许可证免费.txt11162023-01-2009:45Licensepremium.txt--------------2729703如果需要获取更多信息,如压缩大小、压缩比等,请使用-v选项。CRC-32在输出是循环冗余校验。$unzip-vwebdesign.zipArchive:webdesign.zipLengthMethodSizeCmprDateTimeCRC-32Name---------------------------------------------------205358Defl:N14209731%2023-01-1823:14792f2380339252-PAJF05-394.ai996906Defl:N22122878%2023-01-1823:14440390d3339252-PAJF07-322.EPS213968DEFL:N14756831%2023-01-2000:00CDB64DFC339252-Palbti-224.AI100aFL03-362DEFL:N14756831%339252-PALBTL-394.eps305531Defl:N18336340%2023-01-2000:00e4ced90f339252-PALBTM-53。Licensefree.txt1116Defl:N55850%2023-01-2009:45165dd84eLicensepremium.txt-----------------------272970392226966%7files3、覆盖已有文件而不提示如果当前目录下已经有同名文件,那么解压时会提示“是否覆盖当前文件”,可以使用-ooption,toskipasking,forceoverwrite:unzip4,don'toverwriteanyfiles如果你不想覆盖现有的文件,你可以使用-noption:unzip5,updateandifnecessary创建文件以更新文件时,它与覆盖略有不同。当某些文件的时间戳比现有文件更新时,它们将被覆盖。如果文件不存在,则直接创建。在这种情况下,需要使用-u选项:unzip6,它会更新现有文件,但不会创建新文件。此示例与上一个示例略有不同。在此示例中,如果时间戳较新,则某些文件将被覆盖,但如果它们不存在,则不会创建新文件。在这种情况下,您可以使用-f选项:unzip7,以安静模式解压缩文件。解压文件时,屏幕上会显示解压后的文件。但是当有数百个文件时……屏幕一直在滚动。可以使用-q选项选择安静模式,在这种情况下,解压过程中不会向屏幕输出任何信息。unzip8,解压时排除某些文件unzip命令可以在解压时排除某些文件或某些类型的文件:unzip例如我想在解压时排除.eps文件,如下:$unzipwebdesign.zip-x*.epsArchive:webdesign.zipinflating:339252-PAJF05-394.aiinflating:339252-PALBTI-224.aiinflating:339252-PALBTM-53.jpginflating:Licensefree.txtinflating:Licensepremium.txt以上例子是一些常见的使用解压缩命令,您可以查看man手册以获取更多信息。