7z无疑是一个功能强大的强大的归档器(声称提供最高的压缩比)。 在youcl中,我们已经讨论过如何安装和使用它。 但讨论仅限于您可以使用该工具提供的“函数字母”访问的基本功能。
我们将在本教程中扩展我们对该工具的覆盖面,我们将讨论一些“开关”7z提供的内容。 但在我们继续之前,值得分享的是,本教程中提到的所有说明和命令都已在Ubuntu 16.04 LTS上进行了测试。
注意 :我们将使用以下屏幕截图中显示的文件来执行使用7zip的各种操作。
包含文件
7z工具允许您有选择地将档案包含在档案中。 可以使用-i开关访问此功能。
句法:
-i[r[-|0]]{@listfile|!wildcard}
例如,如果要在归档文件中仅包含“.txt”文件,则可以使用以下命令:
$ 7z a ‘-i!*.txt’ include.7z
这是输出:
现在,要检查新创建的归档文件是否只包含'.txt'文件,可以使用以下命令:
$ 7z l include.7z
这是输出:
在上面的屏幕截图中,您可以看到只有'testfile.txt'文件已添加到存档。
排除文件
如果需要,还可以排除不需要的文件。 这可以使用-x开关完成。
句法:
-x[r[-|0]]]{@listfile|!wildcard}
例如,如果要从要创建的存档中排除名为“abc.7z”的文件,则可以使用以下命令:
$ 7z a ‘-x!abc.7z’ exclude.7z
这是输出:
要检查生成的归档文件是否排除了“abc.7z”,可以使用以下命令:
$ 7z l exclude.7z
这是输出:
在上面的屏幕截图中,您可以看到“abc.7z”文件已被排除在新的归档文件中。
专业提示 :假设任务是排除所有.zz文件,其名称以字母't'开始,并包含名称以字母'a'开头的所有.7z文件。 这可以通过以下方式组合'-i'和'-x'开关来实现:
$ 7z a '-x!t*.7z' '-i!a*.7z' combination.7z
为您的存档设置密码
7z还允许您密码保护您的归档文件。 可以使用-p开关访问此功能。
$ 7z a [archive-filename] -p[your-password] -mhe=[on/off]
注意 : -mhe选项启用或禁用归档文件头加密(默认为关闭) 。
例如:
$ 7z a password.7z -pHTF -mhe=on
不用说,当您提取受密码保护的存档文件时,该工具会询问您的密码。 要提取受密码保护的文件,请使用'e'函数字母。 以下是一个例子:
$ 7z e password.7z
设置输出目录
该工具还可以在您选择的目录中提取归档文件。 这可以使用-o开关来完成。 不用说,只有当命令包含“e”函数字母或“x”函数字符时,该开关才有效。
$ 7z [e/x] [existing-archive-filename] -o[path-of-directory]
例如,假设在当前工作目录中运行以下命令:
$ 7z e output.7z -ohow/to/forge
而且,由于传递给-o开关的值表明,目的是在./how/to/forge目录中提取存档。
这是输出:
在上述屏幕截图中,您可以看到现有存档文件的所有内容都已被提取。 但是哪里? 要检查是否在./how/to/forge目录中提取归档文件,我们可以使用'ls -R'命令。
在上面的截图中,我们可以看到output.7z的所有内容都已被提取到./how/to/forge。
创建多个卷
借助7z工具,您可以创建档案文件的多个卷(较小的子档案)。 当通过网络或USB传输大文件时,这是非常有用的。 可以使用-v开关访问此功能。 开关需要指定子档案的大小。
我们可以以字节(b),千字节(k),兆字节(m)和千兆字节(g)指定子档案大小。
$ 7z a [archive-filename] [files-to-archive] -v[size-of-sub-archive1] -v[size-of-sub-archive2] ....
让我们用一个例子来理解这个。 请注意,我们将使用一个新的目录来执行-v开关的操作。
这是目录内容的截图:
现在,我们可以运行以下命令来创建一个归档文件的多个卷(每个大小为100b):
7z a volume.7z * -v100b
这是截图:
现在,要查看创建的子档案列表,请使用'ls'命令。
从上面的截图中可以看出,共有四个卷被创建 - volume.7z.001,volume.7z.002,volume.7z.003和volume.7z.004
注意 :您可以使用.7z.001存档提取文件。 但是,为此,所有其他子归档卷应该存在于同一目录中。
设置归档的压缩级别
7z还允许您设置档案的压缩级别。 可以使用-m开关访问此功能。 在7z中有各种压缩级别,如-mx0,-mx1,-mx3,-mx5,-mx7和-mx9。
以下是有关这些级别的简要总结:
- mx0 =不要压缩 - 只需将内容复制到存档。
- mx1 =消耗最少的时间,但压缩低。
- mx3 =优于-mx1。
- mx5 =这是默认值(压缩是正常的)。
- mx7 =最大压缩。
- mx9 =超压缩。
注意 :有关这些压缩级别的更多信息,请点击此处 。
$ 7z a [archive-filename] [files-to-archive] -mx=[0,1,3,5,7,9]
例如,我们在目录中有一堆文件和文件夹,我们每次尝试使用不同的压缩级别进行压缩。 只是为了给你一个想法,这里是当使用压缩级别'0'创建存档时使用的命令。
$ 7z a compression(-mx0).7z * -mx=0
同样,执行其他命令。
以下是输出档案(使用“ls”命令生成)的列表,其名称表示其创建中使用的压缩级别,输出中的第五列显示压缩级别对其大小的影响。
显示存档的技术信息
如果需要,7z还可以在标准输出上显示存档的技术信息 - 其类型,物理大小,标题大小等。 可以使用-slt开关访问此功能。 此开关仅适用于'l'功能字母。
$ 7z l -slt [archive-filename]
例如:
$ 7z l -slt abc.7z
这是输出:
指定要创建的归档类型
如果要创建非7zip存档(默认创建),则可以使用-t开关指定您的选择。
$ 7z a -t[specify-type-of-archive] [archive-filename] [file-to-archive]
以下示例显示了创建.zip文件的命令:
7z a -tzip youcl *
生成的输出文件是'youcl.zip'。 要交叉验证其类型,请使用'file'命令:
所以,youcl.zip确实是一个ZIP文件。 同样,您可以创建7z支持的其他类型的存档。
结论
你会同意,7z'函数字母'以及'开关'的知识可以让你充分利用这个工具。 我们还没有完成交换机 - 还有一些将在第2部分中讨论。