Loading... 归档命令允许你将多个文件和目录捆绑到压缩归档文件中,以方便移植和存储。Linux 中常见的压缩包格式包括 `.tar`、`.gz` 和 `.zip`。 ## 1. tar – 从归档文件中存储和提取文件 tar 命令可帮助你处理磁带归档文件(.tar)。它可以帮助你将多个文件和目录捆绑到一个压缩的 .tar 文件中。 语法: ```bash tar [options] filename ``` 有用的 tar 选项: - c – 创建一个新的 .tar 压缩文件。 - x – 从 .tar 压缩文件中提取文件。 - f – 指定存档文件名,而不是 stdin/stdout。 - v – 显示归档文件的详细输出。 - z – 使用 gzip 压缩或解压缩压缩包。 例子: ```bash tar -cvzf images.tar.gz /home/user/images # tar -xvzf images.tar.gz ``` 这会创建一个名为 images.tar.gz 的 gzip 压缩文件,其中包含 /home/user/images 文件夹。 ## 2. gzip – 压缩或扩展文件 gzip 命令使用 LZ77 编码压缩文件,以减小存储或传输文件的大小。使用 gzip,你可以处理 .gz 文件。 默认只能压缩文件,压缩文件夹用-r file/,默认压缩后的文件名比压缩的文件名多了一个。gz,想指定压缩文件名用-c flienname > output.gz。 语法: ```bash gzip [options] filename ``` 有用的 gzip 选项: - c – 将输出写入 stdout,而不是文件。 - d – 解压缩文件,而不是压缩文件。 - r – 对目录进行递归压缩。 ```bash [root@xx test]# ls linux66.txt [root@xx test]# gzip linux66.txt [root@xx test]# ls linux66.txt.gz [root@xx test2]# ls test2 linux66.txt linux.txt [root@xx test2]# gzip -r ../test2 [root@xx test2]# ll test2 linux66.txt.gz linux.txt.gz ``` 例子: ```bash gzip -cr documents/ ``` 上述命令递归压缩 documents 文件夹并输出到 stdout。 gzip 命令的 -c 选项非常有用,它允许将压缩后的内容输出到标准输出(stdout),而不是将其写入一个文件。这在某些情况下非常方便,特别是当你想要将压缩的数据流直接传递给其他命令或进程时。 ```bash #gzip -c filename > output.gz [root@xx test]# gzip -c linux.txt > linux.txt.gz #等同 gzip linux.txt ``` 你还可以将压缩后的内容通过管道(pipe)传递给其他命令。例如,以下命令将压缩一个文件并将其输入传递给 cat 命令,以显示压缩后的内容: ```bash #gzip -c filename | cat [root@xx test]# gzip -c linux.txt | cat linux.txt+I-.Q06PP᱈Ήȗ°42}2,L¸= ``` 这个示例中,gzip -c filename 将压缩的结果传递给了管道(|),管道将这个结果作为输入传递给 cat 命令。cat 命令会将压缩后的内容显示在终端上。 ## 3. gunzip – 解压缩文件 gunzip 命令用于解压缩 .gz 文件。 语法: ```bash gunzip filename.gz ``` 例子: ```bash gunzip documents.tar.gz ``` 上述命令将提取 documents.tar.gz 未压缩的原始内容。 ## 4. zip – 打包和压缩文件 zip 命令用于创建包含压缩文件内容的 .zip 归档文件。 语法: ```bash zip [options] archive.zip filenames ``` 有用的 zip 选项: - r – 递归压缩一个目录。 - e – 使用密码加密内容。 例子: ```bash zip -re images.zip pictures ``` 将图片文件夹加密并压缩为 images.zip。 ## 5. unzip – 从 ZIP 档案中提取文件 与 gunzip 类似, unzip 命令可从 .zip 压缩文件中提取和解压缩文件。 unzip命令允许您从终端提取.zip文件的内容。同样,默认情况下可能不会安装此软件包,因此请确保使用package管理器安装它。 语法: ```bash unzip archive.zip ``` 例子: ```bash unzip images.zip ``` 上述示例命令提取了当前目录下 images.zip 中的所有文件。 最后修改:2024 年 01 月 09 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏