7zip命令行中文說明

7zip命令行中文說明,相關內容介紹:2010年8月1日 
Gzip 除了GZip 不支持「儲存」壓縮算法以外,GZip 和Zip 同樣使用着相同的參數。
7z參數默認 說明 ...。
 

7z.exe 是 7-Zip 的命令行版本。7z.exe 使用 7-Zip 的其它模塊,7za.exe 是7-Zip 的獨立版本,7za.exe 僅支持 7z、zip、gzip、bzip2 和 tar 格式,7za.exe 使用時不會調用其它模塊。算法

命令行選項express

7z [命令行] [[選項]...] [基本檔案名稱] [[參數變量]...]網絡

7z [command] [[switch]...] [base_archive_name] [[arguments]...]多線程

 [參數變量] ::= [選項] | [通配符] | [文件名] | [文件列表]ide

 [選項]::= [選項標記][選項字符][[選項]]測試

 [選項標記] ::= '/' | '-'優化

 [文件列表] ::= @{文件名}ui

 [arguments] ::= [switch] | [wildcard] | [filename] | [list_file]編碼

 [switch]::= [switch_symbol][switch_characters]`option`加密

 [switch_symbol] ::= '/' | '-'

 [list_file] ::= @{filename}

在方括號內的表達式(「[」和「]」之間的字符)是可選的。在書名號內的表達式(「[」和「]」之間的字符)是必須替換的表達式(並且要去掉括號)。

 表達式 expression1 | expression2 | ... | expressionN

 命令行及 選項 使用大寫或小寫字母均可以。 首個命令行必須是無選項的參數變量。 選項及其它文件名的輸入順序能夠打亂。帶有空格的通配符或文件名必須加上引號:

 "Dir\Program files\*

"Dir\"Program files"\*

通配符是一個鍵盤字符,例如星號(*)或問號(?),當執行添加文件、釋放文件、選定文件、刪除文件等操做時,您可使用它來表明一個或多個字符。當您不知道真正字符或者不想鍵入完整名稱時,經常使用通配符代替一個或多個字符。

 7-Zip 支持和 Windows 相相似的通配符:

 「*」可使用星號代替零個或多個字符。

 「?」能夠用問號代替名稱中的單個字符。

7-Zip 使用的並非系統處理通配符的默認方法,於是 7-Zip 不支持其它通配符規則,在系統中 *.* 至關於全部文件。而 7-Zip 會將其視爲任何擴展名的所有文件。因此要處理全部文件您必須使用 * 通配符。

 示例: *.txt 這樣會查找(添加、選定……)全部擴展名是「.txt」的文件

 ?a* 這樣會查找(添加、選定……)全部第二個字母爲「a」的文件

 *1* 這樣會查找(添加、選定……)全部包含「1」的文件

 *.*.* 這樣會查找(添加、選定……)全部包含「.」的雙擴展名文件

 若是在命令行中沒有文件名,系統將會使用默認通配符「*」。

檔案文件中通配符及文件名的使用限制:通配符及文件名不能包括系統盤符或網址。每一個通配符及文件名路徑將被視爲從盤符到當前目錄的完整路徑/從壓縮檔案的根目錄算起的完整路徑。換句話說,路徑的開始部分(在首個斜線(「\」)以前的字符)必須是某個名稱或通配符。通配符及文件名不能以斜線(「\」)結尾。通配符只能夠在完整路徑的最後一部分中出現。

 示例: Dir1\*.cpp

 正確 c:\Dir1\*.cpp

 錯誤:路徑中不能包括盤符

 Dir1\Dir2\g?.txt

 正確 Dir1\D?r2\file1.txt

 錯誤:只有在以路徑的最後一部分才能使用通配符

 文件列表您可使用文件列表來對要操做的文件進行批量操做。在文件中的文件名必須用空格或另起一行隔開。(如使用空格格開,每個文件必須加引號)。

 7-Zip 命令行支持多個文件列表同時操做。舉個例子,這裏有一個文件列表「listfile.txt」包含下列內容:

 "My programs\*.cpp"

 Src\*.cpp

 那麼咱們能夠輸入命令:

 7z a -tzip archive.zip @listfile.txt

 將「My programs」及「Src」目錄中全部擴展名爲「cpp」的文件添加到壓縮檔案「archive.zip」中。

 命令行 命令行的命令不分大小寫。

 更多有關命令行的詳細內容請參閱 語法。

 命令要點參考

 命令 做用說明 a 添加 d 刪除 e 釋放 l 列表

 t 測試 u 更新 x 完整路徑釋放

 a (添加) 命令

 添加文件到壓縮檔案。

 示例 7z a -tzip archive.zip subdir\*

 從 subdir 文件夾添加全部文件到 archive.zip 壓縮檔案。

 7z a -tzip Files.zip "Program files\*" -r

 從 Program 文件夾添加全部文件到 Files.zip 壓縮檔案。

 能夠和此命令結合使用的選項

-i (包括文件名), -m (設置壓縮算法), -p (設置密碼), -r (遞歸子目錄), -t (設置壓縮檔案格式), -u (更新選項), -w (設置工做目錄), -x (排除文件)

 其餘命令行: d (刪除), u (更新)

 選項: -u (更新選項)

 d (刪除) 命令

 從壓縮檔案刪除文件

 示例 7z d archive.zip *.bak

 從 archive.zip 壓縮檔案中刪除 *.bak 文件

 能夠和此命令結合使用的選項

-i (包括文件名), -m (設置壓縮算法), -p (設置密碼), -r (遞歸子目錄), -u (更新選項), -w (設置工做目錄), -x (排除文件)

 其餘命令行: a (添加), u (更新)

 選項: -u (更新選項)

 e (釋放) 命令

從壓縮檔案中釋放文件到當前目錄中。或者到指定的輸出文件夾。輸出文件夾設置能夠經過 -o (設置輸出文件夾) 選項來更改。

 此命令會將全部被釋放的文件放置到一個文件夾。若是您想使用完整路徑釋放文件,您必須使用 x (完整路徑釋放) 命令。

 7-Zip 在覆蓋現有文件時會提示用戶如何進行下一步操做。除非用戶自定義了 -y (全是) 選項。

 7-Zip 所支持的下列迴應:

 迴應 簡寫 描述

 Yes(是) y

 No(否) n Always(老是) a 將全部的詢問以 YES 來對待

 Skip(跳過) s 將全部的詢問以 NO 來對待

 Quit(退出) q 退出程序

 示例 7z e archive.zip

從壓縮檔案 archive.zip 中釋放全部文件到當前文件夾。

 7z e archive.zip -oc:\soft *.cpp

從壓縮檔案 archive.zip 中釋放 *.cpp 文件到 c:\soft 文件夾。能夠和此命令結合使用的選項。

-ao (覆蓋模式), -i (包括文件名), -o (設置輸出目錄), -p (設置密碼), -r (遞歸子目錄), -x (排除文件), -y (全是)

 其餘命令行: x (完整路徑釋放)

 l (列表) 命令

 列出壓縮檔案內容。

 示例 7z l archive.zip

 列出壓縮檔案 archive.zip 的內容。

 能夠和此命令結合使用的選項

-i (包括文件名), -r (遞歸子目錄), -x (排除文件)

 t (測試) 命令

 測試壓縮檔案文件的完整性。

 示例 7z t archive.zip *.doc

 在壓縮檔案 archive.zip 中測試 *.doc 文件的完整性。

 能夠和此命令結合使用的選項

-i (包括文件名), -r (遞歸子目錄), -p (設置密碼), -x (排除文件)

 u (更新) 命令

 在壓縮檔案文件中使用較新的文件替換掉較舊的文件

 示例 7z u archive.zip *.doc

 在壓縮檔案 archive.zip 中更新 *.doc 文件

 能夠和此命令結合使用的選項

 -i (包括文件名), -m (設置壓縮算法), -p (設置密碼), -r (遞歸子目錄), -t (設置壓縮檔案格式), -u (更新選項), -w (設置工做目錄), -x (排除文件)

 其餘命令行: a (刪除), d (刪除)

 選項: -u (更新選項)

 x (完整路徑釋放) 命令

在當前目錄中,使用完整路徑從壓縮檔案中釋放文件.或者到指定的輸出文件夾。更多詳細內容請參閱 e (釋放) 命令。

 示例 7z x archive.zip

 從壓縮檔案 archive.zip 中釋放全部文件到當前文件夾。

 7z x archive.zip -oc:\soft *.cpp

從壓縮檔案 archive.zip 中釋放 *.cpp 文件到 c:\soft 文件夾。

 能夠和此命令結合使用的選項-ao (覆蓋模式), -i (包括文件名), -o (設置輸出目錄), -p (設置密碼), -r (遞歸子目錄), -x (排除文件), -y (全是)

 其餘命令行: e (釋放

 命令行選項

 語法 [選項]::= [選項_符號][選項_字符][[選項]]

 [選項_符號] ::= '/' | '-' <switch]::= [switch_symbol][switch_characters]`option`

 [switch_symbol] ::= '/' | '-'

 在命令行中,一個完整的選項由指定的選項、連字符(-)或斜線(/)組成,並且選項的符號不能使用縮寫。選項名稱不區分大小寫。而一部分選項會包括參數變量,它們是須要區分大小寫的。選項可使用在命令行中的任何位置。 有關命令行的詳細使用說明請見語法。 選項要點參考 選項 說明 – 阻止選項解析

 -ai 附件檔案文件

 -an 不解析檔案名稱

 -ao 覆蓋模式

 -ax 排除檔案文件

 -i 包括文件

 -m 設置壓縮算法

 -o 設置輸出目錄

 -p 設置密碼

 -r 遞歸子目錄

 -sfx 建立自釋放檔案

 -si 從StdIn 讀取數據

 -so 從StdOut 寫入數據

 -t 設置檔案類型

 -u 更新選項

 -v 建立分卷

 -w 設置工做目錄

 -x 文件名排除

 -y 全是 -- (阻止選項解析) 選項

 在命令行中使「--」後的選項開關「-」都失效。這樣就容許在命令行中使用文件名以「-」開頭的文件

 語法 -- 示例 7z t -- -ArchiveName.7z

 測試 -ArchiveName.7z 壓縮檔案.

 -ai (附件檔案文件名) 開關

 指定附加文件,包括壓縮檔案文件名及通配符。此選項可同時附加多個類型。

 語法 -ai`recurse_type`[file_ref]

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

 [file_ref] ::= @{listfile} | !{wildcard}

 -an (不解析檔案名稱) 選項

 不解析命令行中的 archive_name 區域。此選項必須和 -i (附加文件) 開關一塊兒使用。好比您爲壓縮檔案使用列表文件,您就須要指定 -ai 選項,因此您須要禁止解析命令行中的 archive_name 區域。

 語法 -an 示例 7z t -an -ai!*.7z -ax!a*.7z

 測試除 a*.7z 以外的 *.7z 壓縮檔案。

 能夠和此選項結合使用的命令

 e (釋放), l (列表), t (測試), x (完整路徑釋放)

其它選項: -i (附加文件), -x (排除文件)

 -ao (覆蓋模式) 選項

 指定在釋放期間如何覆蓋硬盤上現有的同名文件

 語法 -ao[a | s | u ]

 參數 說明

 -aoa 直接覆蓋現有文件,而沒有任何提示。

 -aos 跳過現有文件,其不會被覆蓋。

 -aou 若是相同文件名的文件以存在,將自動重命名被釋放的文件。舉個例子,文件 file.txt 將被自動重命名爲 file_1.txt。

 -aot 若是相同文件名的文件以存在,將自動重命名現有的文件。舉個例子,文件 file.txt 將被自動重命名爲 file_1.txt。

示例 7z x test.zip -aoa

 從壓縮檔案 test.zip 中釋放全部文件並卻不提示直接覆蓋現有文件。能夠和此選項結合使用的命令

 e (釋放), x (完整路徑釋放)

 其它選項: -y (全是)

 -ax (排除檔案文件名) 選項

 指定必須從操做中排除的壓縮檔案,此選項可同時排除多個類型。

 語法 -ax`recurse_type`[file_ref]

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

 [file_ref] ::= @{listfile} | !{wildcard}

 有關此選項參數的詳細信息請參見 -i (附加文件) 選項。

 示例 7z t -an -ai!*.7z -ax!a*.7z

 測試除 a*.7z 以外的 *.7z 壓縮檔案,能夠和此選項結合使用的命令

 e (釋放), l (列表), t (測試), x (完整路徑釋放)

其它選項: -i (附加文件), -an (不解析檔案名稱)

參數 [recurse_type]

 指定通配符及文件名,此選項在這裏必須使用。若是此選項未被指定,那麼將自動使用遞歸。更多詳細信息請參見 -r (遞歸子目錄) 選項。

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

 [file_ref]

 指定要處理的文件文件名、通配符或文件列表。

 [file_ref] ::= @{listfile} | !{wildcard}

 選項 說明

 {listfile} 指定文件列表的文件名。參見 列表文件 的說明。

 {wildcard} 指定通配符或文件名。

 示例 7z t -an -air!*.7z

 在當前目錄及子目錄下測試 *.7z 壓縮檔案,能夠和此選項結合使用的命令

 a (添加), d (刪除), e (釋放), l (列表), t (測試), u (更新), x (完整路徑釋放)

 其它選項: -ax (排除檔案文件名), -an (不解析檔案名稱)

 -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} 指定文件名或通配符。

 示例 7z a -tzip src.zip *.txt -ir!DIR1\*.cpp

 從當前目錄中添加 *.txt 文件,和 DIR1 目錄及其子目錄中的 *.cpp 文件到 src.zip 壓縮檔案。能夠和此選項結合使用的命令

 a (添加), d (刪除), e (釋放), l (列表), t (測試), u (更新), x (完整路徑釋放)

 其它選項: -r (遞歸子目錄), -x (排除文件)

 -m (設置壓縮算法) 選項

 指定壓縮算法。 

語法 -m[method_parameters]

 此選項的格式依壓縮檔案的類型而定。

 Zip參數 默認值 說明

 x=[0 | 5 | 9 ] 5 設置壓縮等級。

m={MethodID} Deflate 設置壓縮算法:Copy、Deflate、Deflate6四、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、BZip二、Deflate、BCJ、BCJ二、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、單詞大小爲 3二、BCJ 過濾器。

 7 最大壓縮:LZMA 最大算法、8 MB 字典大小、BT4 Match finder、單詞大小爲 6四、BCJ 過濾器。

 9 極限壓縮:LZMA 最大算法、32 MB 字典大小、BT4b Match finder、單詞大小爲 6四、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 設置固實數據流的大小(字節)

不一樣的壓縮等級對固實數據流大小的限制:

壓縮等級 大小 儲存

 快速 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。若是開啓檔案文件頭徹底壓縮,那麼此壓縮檔案只有 7-Zip 2.30 beta 25 及更高的版本才能支持。

he=[off | on]開啓或關閉檔案文件頭加密。此選項的默認值是 he=off。

 {N} 設置算法的順序。它也能夠用算法關聯參數。最小值爲 0。含有從號的算法將被首先使用。

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

 將輸出流 S1 及編碼器 C2 中的輸入流 S2 與編碼器 C1 綁定。若是未指定流的大小,那麼大小將爲 0。一般狀況下,編碼器有一個輸入流及一個輸出流。而在 7z 中,一些編碼器有多個輸入及輸出流。

舉個例子,BCJ2 編碼器有有關輸入流及四個輸出流。

 mt=[off | on]

 開啓或關閉多線程壓縮模式。在多線程支持模式中,7-Zip 將使用兩個線程來進行壓縮。這樣的話,對於多處理器系統,那麼壓縮速度將提高 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 到 255。正常模式下默認值爲 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)。

 示例 7z a -tzip archive.zip *.jpg -m0

 不壓縮而直接將 *.jpg 文件添加到 archive.zip 檔案。

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

 添加 *.exe 及 *.dll 文件到固實壓縮檔案 archive.7z。使用 LZMA 壓縮算法、2 MB 字典大小及 BCJ 轉換器。壓縮將開啓多線程優化(若是可用)。

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

 添加 *.exe 及 *.dll 文件到壓縮檔案 archive.7z。使用 LZMA 壓縮算法、BCJ2 轉換器、爲主輸出流(s0)使用 8 MB 字典大小、LZMA 算法爲 BCJ2 轉換器的 s1 及 s2 輸出流使用 512 KB 字典大小。

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

 添加 *.txt 文件到壓縮檔案 archive.7z。使用 PPMd 壓縮算法。

 能夠和此選項結合使用的命令

 a (添加), d (刪除), u (更新)

 其它選項: -t (設置壓縮檔案格式)

 -p (設置密碼) 選項

 指定密碼。

 語法 -p{password}

 {password}

 指定密碼。

 示例 7z x archive.zip -psecret

 將設有密碼「secret」的壓縮檔案 archive.zip 中全部文件釋放。能夠和此選項結合使用的命令:

 a (添加), d (刪除), e (釋放), t (測試), u (更新), x (完整路徑釋放) -r (遞歸子目錄) 選項

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

 語法 -r[- | 0]

 選項 說明

 -r 開啓遞歸子目錄。對於 e (釋放)、l (列表)、t (測試)、x (完整路徑釋放) 這些在壓縮檔案中操做的命令,會默認使用此選項。

 -r- 關閉遞歸子目錄。對於 a (添加)、d (刪除)、u (更新) 等全部需掃描磁盤文件的命令,會默認使用此選項。

 -r0 開啓遞歸子目錄。但只應用於通配符。

 示例 7z l archive.zip -r- *.doc

列出在 archive.zip 壓縮檔案中根目錄下的 *.doc 文件

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

將 src 目錄及其子目錄中的 *.cpp 及 *.h 文件添加到 archive.zip 壓縮檔案。

能夠和此選項結合使用的命令

 a (添加), d (刪除), e (釋放), l (列表), t (測試), u (更新), x (完整路徑釋放)

 其它選項: -i (附加文件), -x (排除文件)

 -sfx (建立自釋放檔案) 選項

 建立自釋放檔案。

 語法 -sfx[{SFX_Module}]

 {SFX_Module}指定將被添加到壓縮檔案的自釋放(SFX)模塊。然而被指定的模塊必須和 7z.exe 文件在同一目錄。若是 {SFX_Module} 未指定,7-Zip 將使用命令行自釋放模塊 7zCon.sfx。

 SFX_Module 說明

 7zC.sfx Windows 版本。

 7zCon.sfx 命令行(DOS)版本。

 7zS.sfx Windows 安裝版本。

 7zSD.sfx Windows 安裝版本(需調用 MSVCRT.dll)。

 除 7zC.sfx 以外,大多數的自釋放模塊都是未壓縮的。 您可使用 UPX 程序 (http://upx.sourceforge.net) 來壓縮這些模塊。在使用 UPX 程序壓縮以後,自釋放模塊的大小將比壓縮以前減少 40-50%。

 自釋放安裝模塊

 自釋放安裝模塊(7zS.sfx 和 7zSD.sfx)可以讓您建立軟件的安裝程序。這類模塊將釋放文件到一臨時文件夾,而後運行指定的程序來進行安裝。安裝以後再自動刪除臨時文件。要建立自釋放檔案必須有三個文件:自釋放模塊、安裝程序配置、7z 壓縮檔案。其中安裝程序配置文件是可選的。您可使用下列命令來建立安裝程序:

 copy /b 7zS.sfx + config.txt + archive.7z archive.exe

 請注意上述文件的輸入順序:*.sfx、*.txt、*.7z。最後的 archive.exe 即爲生成的安裝程序。

 選項 -y 使用在自釋放安裝模塊中可設置釋放時是否爲安靜模式。

 安裝程序配置文件格式

 配置文件包括安裝程序的命令行。文件要以字串 ;!@Install@!UTF-8! 開頭,以 ;!@InstallEnd@! 結尾。且文件必須使用 UTF-8 編碼。文件中還需包含下列變量:

 ID_String="Value"

 ID_String

 說明 Title 對話框信息標題。

 BeginPrompt 安裝前提示信息。

 RunProgram 欲執行命令。若添加子命令 %%T 則會把文件釋放到系統的臨時目錄。

 您能夠省略上述任何一部分。

 配置文件示例

 ;!@Install@!UTF-8!

 Title="7-Zip 1.00"

 BeginPrompt="應用程序將安裝 7-Zip 1.00,是否繼續?"

 RunProgram="Setup.exe /T:%%T"

 ;!@InstallEnd@!

 程序將以 BeginPrompt 中的信息提示用戶,再執行 RunProgram 中的命令。而後程序將使用 .inf 文件的內容並調用壓縮包中的 advpack.dll 文件進行安裝。

 示例 7z a -sfx a.exe *.txt

 添加 *.txt 文件到自釋放檔案 a.exe 並使用默認的命令行自釋放模塊。

 7z a -sfx7zC.sfx a.exe * -r

 添加全部文件到自釋放檔案 a.exe 並使用 7zC.sfx Windows 版本的自釋放模塊。

 能夠和此選項結合使用的命令

 a (添加), d (刪除), u (更新)

 v -si (從 stdin 讀取數據) 選項

 使 7-Zip 從 stdin 中使用數據(標準輸入流)。

 語法 -si{file_name}

 {file_name}

 爲要壓縮的數據指定一個將要儲存在壓縮檔案中的名稱。若是 file_name 未被指定,數據將被儲存而沒有名稱。

 注意:當前版本的 7-Zip 不支持從 stdin 中讀取壓縮檔案。

 示例 7z a archive.gz -tgzip -siDoc2.txt [ Doc.txt

使用 Doc2.txt 文件名壓縮輸入流從文件 Doc.txt 到壓縮檔案 archive.gz。

 能夠和此選項結合使用的命令

 a (添加), u (更新)

 -so (從 stdout 寫入數據) 選項

 使 7-Zip 從 stdout 中使用數據(標準輸出流)。

 語法 -so 示例 7z x archive.gz -so ] Doc.txt

 解壓縮 archive.gz 輸出流並將該輸出流寫入到 Doc.txt 文件

 7z a dummy -tgzip -so Doc.txt ] archive.gz

 壓縮 Doc.txt 輸出流並將該輸出流寫入到 archive.gz 壓縮檔案。

 能夠和此選項結合使用的命令

 a (添加), e (釋放), u (更新), x (完整路徑釋放)

 -t (設置壓縮檔案格式) 選項

 指定壓縮檔案格式。

 語法 -t{archive_type}

 {archive_type}指定壓縮檔案格式。它們能夠是:zip、7z、rar、cab、gzip、bzip二、tar 或其它格式。而默認值是 7z 格式。

 示例 7z a -tzip archive.zip *.txt

 使用 zip 格式從當前目錄中添加全部 *.txt 文件到壓縮檔案 archive.zip。

 能夠和此選項結合使用的命令:

 a (添加), u (更新)

 -u (更新選項) 選項

 指定壓縮檔案中文件的更新及建立的方式。

 語法 -u[-][action_set][!{new_archive_name}]

 [action_set] ::= [state_action]...

 [state_action] ::= [state][action]

 [state] ::= p | q | r | x | y | z | w

 [action] ::= 0 | 1 | 2 | 3

 參量 連字符(-)

 對原壓縮檔案不進行任何更新。

 {new_archive_name} 指定新壓縮檔案的路徑。

 [state] [state] ::= p | q | r | x | y | z | w

 每一個文件名都會賦予下列六個變量:

 [state] 狀態說明 磁盤上的文件 壓縮檔案中的文件

 p文件在壓縮檔案中,但並不和磁盤上的文件相匹配。存在,但並不匹配

 q文件在壓縮檔案中,但磁盤上並不存在。不存在 存在

 r文件不在壓縮檔案中,但磁盤上存在。 存在不存在

 x壓縮檔案中的文件比磁盤上的文件新。 較舊 較新

 y壓縮檔案中的文件比磁盤上的文件舊。 較新 較舊

 z壓縮檔案中的文件和磁盤上的文件相同。 相同 相同

 w不能檢測文件是否較新(時間相同但大小不一樣) ? ?

 [action] 爲適當的 [state] 指定動做。

 [action] ::= 0 | 1 | 2 | 3

 您能夠指定下列四個動做變量中的任意一個:

 [action] 說明 0 忽略文件(在壓縮檔案中不爲此文件建立項目)

 1 複製文件(用壓縮檔案中的新文件覆蓋舊文件)

 2 壓縮文件(將磁盤上的新文件壓縮到檔案中)

 3 建立剔除項(釋放過程當中將刪除文件或目錄項)。此功能只支持 7z 格式。

 注意 任何的更新命令(如 a (添加)、d (刪除)、u (更新))均可以被分配到下列項目中。

 下列表格中顯示的是更新命令的動做設置。

 示例 7z u c:\1\exist.7z -u- -up0q3x2z0!c:\1\update.7z * -r

 建立新壓縮檔案 update.7z 並將當前目錄中的 exist.7z 壓縮檔案裏全部不一樣文件寫入此壓縮檔案。並不更改 exist.7z 壓縮檔案的內容。能夠和此選項結合使用的命令:a (添加), d (刪除), u (更新)

 -v (建立分卷) 選項

 指定分卷大小。

 語法 -v{Size}[b | k | m | g]

 {Size}[b | k | m | g]

 指定分卷大小,可使用字節、KB(1 KB=1024 字節),MB(1 MB = 1024 KB)或 GB(1 GB = 1024 MB)。若是您只指定了 {Size},7-zip 將把它視爲字。您能夠同時指定多個 -v 選項。

 示例 7z a a.7z *.txt -v10k -v15k -v2m

 建立 a.7z 分卷壓縮檔案。第一個分卷爲 10 KB,第二個爲 15 KB,剩下所有爲 2 MB。

 能夠和此選項結合使用的命令

 a (添加)

 -w (設置工做目錄) 選項

 文件壓縮設置臨時的工做目錄。默認狀況下,7-Zip 新建一個壓縮檔案時,會臨時在當前目錄建立一個基本壓縮檔案。然而經過指定此選項,您能夠設置基本壓縮檔案的生成目錄,也就是工做目錄。當壓縮完成時,它將會被重命名爲壓縮前您所指定的文件名,而後刪除在臨時目錄中的原始壓縮檔案。

 語法 -w[{dir_path}]

 {dir_path} 指定目標文件夾。

 若是 [dir_path] 未指定,那麼 7-Zip 將使用 Windows 默認的臨時目錄。

 示例 7z a -tzip archive.zip *.cpp -wc:\temp

 添加 *.cpp 文件到 archive.zip 壓縮檔案,並將臨時壓縮檔案建立到 c:\temp 文件夾。能夠和此選項結合使用的命令

 a (添加), d (刪除), u (更新)

 -x (排除文件) 選項

指定某一文件或某一類文件從操做中排除,此選項可同時排除多個類型。

 語法 -x`recurse_type`[file_ref]

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

 [file_ref] ::= @{listfile} | !{wildcard}

 更多詳細內容請參閱 -i (附加文件) 選項。

示例 7z a -tzip archive.zip *.txt -x!temp.*

添加除 temp.* 文件以外的全部 *.txt 文件到壓縮檔案 archive.zip。能夠和此選項結合使用的命令:

 a (添加), d (刪除), e (釋放), l (列表), t (測試), u (更新), x (完整路徑釋放)

 其它選項: -r (遞歸子目錄), -i (附加文件)

 -y (全是) 選項

 使 7-Zip 執行命令時的大多數提示失效。您可使用此選項來阻止在 e (釋放)和 x (完整路徑釋放) 命令中文件覆蓋時的提示。

 語法 -y 示例

 7z x src.zip -y 從 src.zip 釋放全部文件。全部的覆蓋提示將被阻止且全部相同文件名的文件將被覆蓋。能夠和此選項結合使用的命令:

 e (釋放), x (完整路徑釋放)

 其它選項: -ao (覆蓋模式)
 

原做者不詳,本文來源於網絡。電腦技術羣:89777023

相關文章
相關標籤/搜索