設置 | 登錄 | 註冊

作者共發了82篇帖子。

抛弃WinRAR,用好压

61樓 巨大八爪鱼 2010-8-31 22:02

-i (附加文件) 选项

指定附加文件或一类文件。

此选项可附件添加多个类型。


语法

-i[<recurse_type>]<file_ref> <recurse_type> ::= r[- | 0] <file_ref> ::= @{listfile} | !{wildcard}


参量

<recurse_type>

此值在这个选项中必须使用。如果此选项的值不存在,那么将使用被 -r (递归子目录) 选项所指定的值。更多详细内容请参阅 -r (递归子目录) 选项。

<recurse_type> ::= r[- | 0]

<file_ref>

指定文件名或通配符、或使用文件列表来添加文件。

<file_ref> ::= @{listfile} | !{wildcard}

参数 说明 {listfile} 指定文件列表。请参考 文件列表 相关信息。 {wildcard} 指定文件名或通配符。


示例

HaoZipC a -tzip src.zip *.txt -ir!DIR1\*.cpp

从当前目录中添加 *.txt 文件,和 DIR1 目录及其子目录中的 *.cpp 文件到 src.zip 压缩文件。


可以和此选项结合使用的命令

a (添加)d (删除)e (释放)l (列表)t (测试)u (更新)x (完整路径释放)


其它

选项: -r (递归子目录)-x (排除文件)

62樓 巨大八爪鱼 2010-8-31 22:03

-m (设置压缩算法) 选项

指定压缩算法。


语法

-m<method_parameters>

此选项的格式依压缩文件的类型而定。


Zip

参数 默认值 说明 x=[0 | 5 | 9 ] 5 设置压缩等级。 m={MethodID} Deflate 设置压缩算法:Copy、Deflate、Deflate64、BZip2。 fb={NumFastBytes} 32 设置 Deflate 编码器的单词大小。 pass={NumPasses} 1 设置 Deflate 编码器的传送大小。

x=[0 | 5 | 9 ]

设置压缩等级

压缩等级 说明 0 不压缩。 5 默认的压缩等级。 9 最大压缩等级。压缩后的文件会更小。但是在压缩的时候会比较慢而且需要较多的物理内存。

fb={NumFastBytes}

设置 Deflate 编码器的单词大小。您可以在 3 到 255 范围之内更改。在 Deflate 算法下,它的默认值是 32;在 Deflate 64 算法下,它的默认值是 64。如果要压缩的多个文件中,有很多排列相同的字节,比如说内容及格式极为相同的两个纯文本文档,那么在压缩的时候如果有较大的单词大小,将会在一定程度上提高压缩比。所以,通常情况下,其数量越大,压缩后的文件就会越小。但是在压缩和解压缩的时候会比较慢而且需要较多的物理内存。

pass={NumPasses}

设置 Deflate 编码器的传送大小。您可以在 1 到 4 范围之内更改。在 Deflate 算法下,它的默认值是 1;在 Deflate 64 算法下,它的默认值是 3。此项可略微提升压缩比,但并不明显。


GZip

除了 GZip 不支持“储存”压缩算法之外,GZip 和 Zip 一样使用着相同的参数。



7z

参数 默认 说明 x=[0 | 1 | 5 | 7 | 9 ] 5 设置压缩等级。 s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g] on 设置固实模式。 f=[off | on] on 开启或关闭可执行文件压缩过滤器。 hc=[off | on] on 开启或关闭文件头压缩。 hcf=[off | on] on 开启或关闭文件头完全压缩。 he=[off | on] off 开启或关闭文件头加密。 b{C1}[s{S1}]:{C2}[s{S2}]   设置编码器之间绑定。 {N}={MethodID}[:param1][:param2][..] LZMA 设置压缩算法:LZMA、PPMd、BZip2、Deflate、BCJ、BCJ2、Copy。 mt=[off | on] off 设置多线程模式。

x=[0 | 1 | 5 | 7 | 9 ]

设置压缩等级

压缩等级 说明 0 不压缩. 1 快速压缩:LZMA 快速算法、32KB 字典大小、HC3 Match finder、BCJ 过滤器。 5 正常压缩:LZMA 标准算法、2 MB 字典大小、BT4 Match finder、单词大小为 32、BCJ 过滤器。 7 最大压缩:LZMA 最大算法、8 MB 字典大小、BT4 Match finder、单词大小为 64、BCJ 过滤器。 9 极限压缩:LZMA 最大算法、32 MB 字典大小、BT4b Match finder、单词大小为 64、BCJ2 过滤器。

s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g)]

开启或关闭固实模式。此选项的默认值是 s=on。开启或关闭固实压缩文件模式。在创建固实压缩文件模式中,它把压缩文件中的所有文件都当成一个连续数据流来看待。通常情况下,固实压缩可增加压缩比,特别是在添加大量小文件的时候。

e 为每一种文件扩展名使用单独的固实数据流 {N}f 设置在一个固实数据流种文件的个数 {N}b | {N}k | {N}m | {N}g 设置固实数据流的大小(字节)

不同的压缩等级对固实数据流大小的限制:

压缩等级 大小 储存 0 B 快速 16 MB 正常 256 MB 最大 1 GB 极限 4 GB

对固实数据流大小的限制虽然能应响到压缩比,但是它还是有相当多的优势:

万一压缩文件损坏,并不会丢失所有数据。 减少了文件的释放时间。

在当前的版本中,您只能更新在压缩时未选择“创建固实压缩文件”的压缩文件。也就是说当前版本不支持固实压缩文件的更新。

示例:

-s=100f10m

设置固实模式使每个固实数据流种最多 100 文件,并且最大 10 MB 。

f=[off | on]

开启或关闭可执行文件压缩过滤器:dll、exe、ocx、sfx、sys。它用于 BCJ2 过滤器(使用极限压缩)及 BCJ 过滤器中。此选项的默认值是 f=on.

hc=[off | on]

开启或关闭文件头压缩。此选项的默认值是 hc=on。如果开启文件头压缩,一部分文件的文件头将使用 LZMA 算法进行压缩。

hcf=[off | on]

开启或关闭文件头完全压缩。此选项的默认值是 hcf=on。如果开启文件头完全压缩,那么此压缩文件只有好压2.30 beta 25 及更高的版本才能支持。

he=[off | on]

开启或关闭文件头加密。此选项的默认值是 he=off。

{N}

设置算法的顺序。它被用作算法关联参数。最小值为 0。含有从号的算法将被首先使用。

b{C1}[s{S1}]:{C2}[s{S2}]

将以 C1 编码器编码的输出流 S1 与以 C2 编码器编码的输入流 S2 绑定,如果数据流序号未被指定,默认的数据流序号为 S0。

通常情况下,编码器有一个输入流及一个输出流。而在好压中,一些编码器有多个输入及输出流。

举个例子,BCJ2 编码器有一个输入流及四个输出流。

mt=[off | on]

开启或关闭多线程压缩模式。在多线程支持模式中,好压将使用两个线程来进行压缩。这样的话,对于多处理器系统,那么压缩速度将提升 70-80%。对于 Pentium 4 超线程处理器,压缩速度将提升 25% 左右。但解压缩时只使用单独线程。注意!此选项仅对 LZMA 压缩算法有效。

{N}={MethodID}[:param1][:param2] ... [:paramN]

设置压缩算法。在7z格式中,您可以使用许多压缩算法。此选项的默认算法是 LZMA。

此参数必须是下列格式中的任意一种:

{ParamName}={ParamValue}。 {ParamName}{ParamValue},{ParamValue} 是一个数值,并且 {ParamName} 中不包含数字。

支持的压缩算法:

MethodID 说明 LZMA 基于 LZ 之上的压缩算法。 PPMd 基于 Dmitry Shkarin 之上的算法 PPMdH 并加以优化。通常能对纯文本提供高压缩比及较快的解压缩速度。 BZip2 基于 BWT 的标准压缩算法。通常能对纯文本提供较高压缩比及相当不错的解压缩速度。 Deflate ZIP 及 GZip 格式的标准压缩算法。没有很高的压缩比。但是它拥有十分快的压缩及解压缩速度。Deflate 压缩算法只支持 32 KB 字典大小。 BCJ (CALL、JUMP)32 位 x86 可执行文件转换器。 BCJ2 (CALL、JUMP、JCC)32 位 x86 可执行文件转换器(第二版)。 Copy 不压缩。


LZMA

LZMA 是基于 Lempel-Ziv(由以色列数学家 A.Lempel 和 J.Ziv 共同开发的压缩算法)之上的压缩算法。它能提供相当快的解压缩速度(约比压缩快 10 到 20 倍)。对内存的需求也不尽相同(详细信息请参见 d={Size}[b|k|m] 选项)。

参数 默认值 说明 a=[0|1|2] 1 设置压缩等级 d={Size}[b|k|m] 20 设置字典大小 mf={MF_ID} bt4 设置匹配器 fb={N} 32 设置紧缩字节数量 lc={N} 3 设置 Literal Context 块数 - [0, 8] lp={N} 0 设置 Literal Pos 块数 - [0, 4] pb={N} 2 设置 Pos 块数 - [0, 4]

a=[0|1|2]

设置压缩等级:0=快速、1=正常、2=最大压缩。默认值为 1。

d={Size}[b|k|m]

设置 LZMA 压缩算法的字典大小。您可以使用字节、KB 或 MB 来指定此项。字典大小的最大值为 256 MB=2^28 字节。正常模式下,LZMA 的字典大小默认值为 21(2 MB) ;最大模式(-mx=7)下为 23(8 MB);极限模式(-mx=9)下为 25(32 MB)。如果您未指定 [b|k|m] 项,字典大小将自动根据压缩等级来选择相应的单位。对于 LZMA 算法的文件解压缩,若压缩文件的字典大小为 64 MB,则解压缩时就需要 64 兆可用的物理内存。

mf={MF_ID}

设置 LZMA 压缩算法的匹配器。默认算法为 bt4。bt* 类的算法所需的内存比 pat* 类所需的内存少。通常情况下 bt4 的工作速度比 pat* 快得多,然而部分文件格式在 pat* 算法中可以工作得很快。hc* 类算法并没有很好得压缩比,但是它与快速模式(a=0)结合使用通常会工作得相当快。所需内存依字典大小而定(参见下表)。

MF_ID 所需内存 说明 bt2 d×9.5 + 1 MB 二进制树;2 散列字节。 bt3 d×9.5 + 65 MB 二进制树;2-3(完整) 散列字节。 bt4 d×9.5 + 6 MB 二进制树;2-3-4 散列字节。 bt4b d×9.5 + 34 MB 二进制树;2-3-4(大) 散列字节。 pat2r d×26 + 1 MB Patricia 树;2-位节点;可移动。 pat2 d×38 + 1 MB Patricia 树;2-位节点。 pat2h d×38 + 77 MB Patricia 树;2-位节点;2-3 散列字节。 pat3h d×62 + 85 MB Patricia 树;3-位节点;2-3 散列字节。 pat4h d×110 + 101 MB Patricia 树;4-位节点;2-3 散列字节。 hc3 d×5.5 + 1 MB Hash Chain;-3 散列字节。 hc4 d×5.5 + 6 MB Hash Chain;2-3-4 散列字节。

注意:操作系统同样需要一部分物理内存来维持系统得正常运行。所以至少要剩余 32 可用物理内存。

fb={N}

设置 LZMA 压缩算法的单词字节。有效范围从 5 到 273。正常模式下默认值为 32;最大模式下为 64 。通常情况下,较大的数值能略微提高压缩比。但同时也会降低压缩速度。

lc={N}

设置 Literal Context 位数。有效范围从 0 到 8。默认值为 3。有时压缩文件中含有大文件会自动使用 lc=4。

lp={N}

设置 Literal Pos 位数。有效范围从 0 到 4。默认值为 0。

pb={N}

设置 Pos 位数。有效范围从 0 到 4。默认值为 2。


PPMd

PPMd 是 PPM-based 压缩算法的简写。它基于 Dmitry Shkarin 的算法 PPMdH 并对其源代码加以优化。PPMd 通常能对纯文本提供高压缩比及较快的解压缩速度。压缩和解压缩的速度完全相同,所需的内存大小也一样。

参数 默认值 说明 mem={Size}[b|k|m] 24 设置 PPMd 算法使用内存。 o={Size} 6 设置 PPMd 算法压缩命令。

mem={Size}[b|k|m]

设置 PPMd 算法使用的内存多少。您可以使用字节、KB 或 MB 来指定此项。最大值为 2 GB=2^31 字节;默认值为 24(16MB)。如果您未指定 [b|k|m] 项,字典大小将自动根据压缩等级来选择相应的单位。PPMd 在压缩和解压缩时所需的内存大小是相同的。

o={Size}

设置 PPMd 算法压缩命令。其大小必须在 [2,32] 范围内。默认值为 6。


BCJ2

BCJ2 是 32 位 x86 可执行文件转换器(第二版)。它通过转换分支指令来对文件进行进一步压缩。

BCJ2 编码器有一个输入流和四个输出流:

s0:主流。需要被进一步压缩。 s1:CALL 值转换流。需要被进一步压缩。 s2:JUMP 值转换流。需要被进一步压缩。 s3:服务流。它已经备压缩过。

如果使用 LZMA 压缩算法,s1 及 s2 流的字典大小可以比 s0 流的小很多(大多数情况下 512 KB 足够了)。


示例

HaoZipC a -tzip archive.zip *.jpg -mx0

不压缩而直接将 *.jpg 文件添加到 archive.zip 文件。

HaoZipC a -t7z archive.7z *.exe *.dll -m0=BCJ -m1=LZMA:d=21 -ms -mmt

添加 *.exe 及 *.dll 文件到固实压缩文件 archive.7z。使用 LZMA 压缩算法、2 MB 字典大小及 BCJ 转换器。压缩将开启多线程优化(如果可用)。

HaoZipC a -t7z archive.7z *.exe *.dll -m0=BCJ2 -m1=LZMA:d23 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3

使用 BCJ2 转换器添加 *.exe 及 *.dll 文件到压缩文件 archive.7z。主输出流(s0)使用 LZMA 压缩算法且 8 MB 字典大小, BCJ2 转换的输出流 s1 及 s2 使用 LZMA 压缩算法且 512 KB 字典大小。

HaoZipC a -t7z archive.7z *.txt -m0=PPMd

添加 *.txt 文件到压缩文件 archive.7z。 使用 PPMd 压缩算法。


可以和此选项结合使用的命令

a (添加)d (删除)u (更新)


其它

选项: -t (设置压缩文件格式)

63樓 巨大八爪鱼 2010-8-31 22:03

-o (设置输出文件夹) 选项

指定释放文件的输出文件夹。

此选项只能和释放命令配合使用。


语法

-o{dir_path}

{dir_path}

指定释放文件的输出文件夹路径。路径的结尾不一定要求有反斜线(“\”)


示例

HaoZipC x archive.zip -oc:\Doc

从 archive.zip 压缩文件释放所有文件到 c:\Doc 文件夹。


可以和此选项结合使用的命令

e (释放)x (完整路径释放)

64樓 巨大八爪鱼 2010-8-31 22:03

-p (设置密码) 选项

指定密码。


语法

-p{password}

{password}

指定密码。


示例

HaoZipC x archive.zip -psecret

将设有密码“secret”的压缩文件 archive.zip 中所有文件释放。


可以和此选项结合使用的命令

a (添加)d (删除)e (释放)t (测试)u (更新)x (完整路径释放)

65樓 巨大八爪鱼 2010-8-31 22:03

-r (递归子目录) 选项

把命令行中的通配符及文件名以指定的方法对待。


语法

-r[- | 0]



选项
说明

-r
开启递归子目录。对于 e (释放)l (列表)t (测试)x (完整路径释放) 这些在压缩文件中操作的命令, 会默认使用此选项。 

-r-
关闭递归子目录。对于 a (添加)d (删除)u (更新) 等所有需扫描磁盘文件的命令,会默认使用此选项。 

-r0
开启递归子目录。但只应用于通配符。 

示例

HaoZipC l archive.zip -r- *.doc

列出在 archive.zip 压缩文件中根目录下的 *.doc 文件。

HaoZipC a -tzip archive.zip -r src\*.cpp src\*.h

将 src 目录及其子目录中的 *.cpp 及 *.h 文件添加到 archive.zip 压缩文件。


可以和此选项结合使用的命令

a (添加)d (删除)e (释放)l (列表)t (测试)u (更新)x (完整路径释放)


其它

选项: -i (附加文件)-x (排除文件)

66樓 巨大八爪鱼 2010-8-31 22:03

-scs (设置列表文件字符集) 选项

设置列表文件的字符集。


语法

-scs{UTF-8 | WIN | DOS}

默认字符集为 UTF-8。

UTF-8

Unicode UTF-8 字符集。

WIN

Windows 默认字符集。

DOS

Windows 默认 DOS (OEM) 字符集。


示例

HaoZipC a archive.7z @listfile.txt -scsWIN

从列表文件 listfile.txt 中压缩文件,该列表文件使用 Windows 默认字符集。


可以和此选项结合使用的命令

a (添加)u (更新)

67樓 巨大八爪鱼 2010-8-31 22:03

-seml (通过电子邮件发送文件) 选项

通过电子邮件发送压缩文件。


语法

-seml[.]

[.]

邮件发送后删除压缩文件。


示例

HaoZipC a archive.7z -seml a.txt

压缩 a.txt 文件并通过电子邮件发送 archive.7z。


可以和此选项结合使用的命令

a (添加)u (更新)

68樓 巨大八爪鱼 2010-8-31 22:03

-sfx (创建自释放文件) 选项

创建自释放文件。


语法

-sfx[{SFX_Module}]

{SFX_Module}

指定将被添加到压缩文件的自释放(SFX)模块。然而被指定的模块必须和 HaoZipC.exe 文件在同一目录。如果 {SFX_Module} 未指定,好压将使用命令行自释放模块 7zCon.sfx。

SFX_Module 说明 HaoZip7zCon.sfx 命令行(DOS)版本。 HaoZip7zSetup.sfx Windows安装盘版本。

69樓 巨大八爪鱼 2010-8-31 22:03

-si (从 stdin 读取数据) 选项

使好压从 stdin 中使用数据(标准输入流)。


语法

-si{file_name}

{file_name}

为要压缩的数据指定一个将要储存在压缩文件中的名称。如果 file_name 未被指定,数据将被储存而没有名称。

注意:当前版本的好压不支持从 stdin 中读取压缩文件。


示例

HaoZipC a archive.gz -tgzip -siDoc2.txt < Doc.txt

使用 Doc2.txt 文件名压缩输入流从文件 Doc.txt 到压缩文件 archive.gz。


可以和此选项结合使用的命令

a (添加)u (更新)

70樓 巨大八爪鱼 2010-8-31 22:03

-so (从 stdout 写入数据) 选项

使好压从 stdout 中使用数据(标准输出流)。


语法

-so


示例

HaoZipC x archive.gz -so > Doc.txt

解压缩 archive.gz 输出流并将该输出流写入到 Doc.txt 文件。

HaoZipC a dummy -tgzip -so Doc.txt > archive.gz

压缩 Doc.txt 输出流并将该输出流写入到 archive.gz 压缩文件。


可以和此选项结合使用的命令

a (添加)e (释放)u (更新)x (完整路径释放)

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。