使用手冊
~~~~~~~~
RAR 6.00 指令平台版本
~~~~~~~~~~~~~~~~~~~~~
=-=-=-=-=-=-=-=-=-=-=-=-=-=-
歡迎使用 RAR 壓縮程式!
-=-=-=-=-=-=-=-=-=-=-=-=-=-=
介紹
~~~~
RAR 是一種指令模式的應用程式,用來以下指令的方式管理壓縮檔。
RAR 提供壓縮、加密、資料修復及其他在本手冊介紹的功能。
RAR 只支援 RAR 格式的壓縮檔,預設的副檔名為 .rar,不支援 ZIP 跟
其他格式。即便您在建立壓縮檔時特別指定副檔名為 .zip,建立的壓縮
檔還是 RAR 格式。Windows 的使用者可以安裝使用 WinRAR,支援更多壓
縮格式,如 RAR 跟 ZIP 等。
WinRAR 同時提供圖形介面及指令行模式。即便主控台 RAR 及圖形介面
WinRAR 擁有類似的指令文法,仍存在些許差異。因此建議使用此
rar.txt 手冊來參考主控台 RAR (視窗版本為 rar.exe),使用
winrar.chm WinRAR 說明檔來參考圖形介面 WinRAR (winrar.exe)。
組態檔
~~~~~~
Unix 版本的 RAR 及 UnRAR 從使用者的根目錄 (儲存在 HOME 環境變數) 或
/etc 目錄下的 .rarrc 檔案讀取組態資訊。
Windows 版的 RAR 及 UnRAR 從與 rar.exe 放在相同目錄的 rar.ini 讀取
組態資訊。
此檔案包含下列的字串:
開關=<任何的 RAR 開關,以空格鍵區隔>
例如:
switches=-m5 -s
也可以為單一 RAR 指令使用下列語法,指定分別的開關組:
switches_<指令>=<任何的 RAR 開關,以空格鍵區隔>
例如:
switches_a=-m5 -s
switches_x=-o+
環境變數
~~~~~~~~
由建立的 "RAR" 環境變數可加入預設參數到 RAR 指令行。
例如,在 Unix 底下的列數可加入您的設定檔:
RAR='-s -md1024'
export RAR
當執行於指令行模式時,將會強制 RAR 建立結實的壓縮檔並使用最佳壓縮方
式及 1024 Kb 的字典檔。
RAR 控制選項優先權如下列所示:
指令行開關 最高優先權
RAR 變數的開關 較低優先權
存在組態檔的開關 最低優先權
記錄檔
~~~~~~
如果參數 -ilog 在指令行或組態檔指定時,RAR 會寫入資訊訊息,包括處理壓
縮時檔時的錯誤,到記錄檔中。詳情請參照 -ilog 說明。
設定在結實壓縮檔中的檔案順序 - rarfiles.lst
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rarfiles.lst 包含使用者定義檔案清單,告訴 RAR 加入檔案到結實壓縮檔的順
序,包含了檔案名稱、萬用字元及特殊項目 - $default。default 項目定義了這
個檔案中與其他項目不相符時的順序清單位置。註解的字元是 ';'。
在 Windows 中,這個檔案必須放在與 RAR 或 %APPDATA%\WinRAR 同樣的目錄下,
在 Unix - 放在使用者的 Home 目錄或 /etc 目錄。
增進作業壓縮效率及速度的要訣:
- 在壓縮檔中,類似的檔案儘可能放在一起;
- 存取頻繁的檔案應該放在最前面
一般來說遮罩放在清單的上方具有較高的優先權。但這有一個例外。如果
rarfiles.lst 包含兩個遮罩,其中合乎其中一個遮罩的所有檔案也合乎另一個遮
罩,則符合數量較少的會有較高的優先權,不管在清單中的位置。例如,如果
有 *.cpp 及 f*.cpp 遮罩,f*.cpp 擁有較高的優先權。所以 'filename.cpp'
的位置會參照 'f*.cpp',不是 '*.cpp'。
RAR 指令行語法
~~~~~~~~~~~~~~
語法
RAR <指令> [ -<開關> ] <壓縮檔> <@檔案清單...> [ <檔案...> ]
[ <解壓縮路徑\> ]
敘述
指令行選項 (指令及開關) 提供 RAR 建立及管理控制壓縮檔的控制項。指令是
一個字串 (或單一字母),指令 RAR 執行相對的動作。開關則設計來做修改
RAR 執行的動作。其他的參數則為壓縮檔名稱及要壓縮的檔案或要從壓縮檔解
開的檔案。
清單檔案是純文字檔案,包含要處理的檔案名稱。檔名必須起始於第一欄。也
可以把註解放在檔案清單的後面,接著 // 字元。例如,您可以建立一個
backup.lst 包含以下字串:
c:\work\doc\*.txt //備份純文字文件
c:\work\image\*.bmp //備份圖片
c:\work\misc
然後執行:
rar a backup @backup.lst
如果您希望從 stdin (標準輸入) 中讀取檔案,請指定一個空的清單檔。
(只打 @)。
預設的情況下,指令行 RAR 清單檔使用單位元編碼,但可用 -sc<字元集>l
開關重新定義。
您可以同時在同一個指令中指定一般檔名與清單檔名。如果沒有指定一般
檔名也沒有指定清單檔名,則會使用 *.*,RAR 會處理所有的檔案。
許多 RAR 指令例如解壓縮、測試或清單,允許在壓縮檔中使用萬用元。如
果壓縮檔遮罩沒有指定附檔名,則 RAR 就會假設為 .rar,所以 * 表示所
有以 .rar 為副檔名的壓縮檔。
如果您需要處理所有壓縮檔,不管其附檔名,則使用 *. 作為遮罩。*.*
遮罩會選用所有檔案。壓縮檔內萬用字元不適用於壓縮及刪除時機
在 Unix 您必須將 RAR 命令列參數用到萬用字元者置於引號中,以避免被
Unix 殼層延伸使用。例如,這個指令會在目前路徑從 RAR 壓縮檔解壓縮
*.asm 檔案:
rar e '*.rar' '*.asm'
指令可以是下列的任何一個:
a 加入檔案到壓縮檔。
範例:
1) 加入目前目錄中的 *.hlp 檔至壓縮檔 help.rar:
rar a help *.hlp
2) 壓縮目前目錄及子目錄中所有檔案為 362000 位元組大小、固實、自解
分割檔,並加入修復記錄至每個分割檔:
rar a -r -v362 -s -sfx -rr save
因為沒有指定檔名,就定為所有檔案 (*)。
3) 特別的例外,如果目錄名稱用參數指定,且目錄名稱不包含檔案遮罩及
衍生反斜線,則整個目錄的內容及所有子目錄都會加入壓縮檔中,即便沒有
指定 -r 開關也一樣。
以下指令會把 Bitmaps 內所有檔案及其他子目錄壓縮成 RAR 壓縮檔
Pictures.rar:
rar a Pictures.rar Bitmaps
4) 如果目錄名稱包含檔名遮罩或衍生反斜線,則會應用一般的規則,且需
要使用 -r 開關來處理子目錄。
下列指令會從 Bitmaps 目錄加入所有檔案,但不會加入子目錄,因為沒有
指定 -r 開關:
rar a Pictures.rar Bitmaps\*
c 加入壓縮檔註解。註解會在處理壓縮檔時顯示。註解長度限制為 256 KB
範例:
rar c distrib.rar
註解也可以利用 -z[名稱] 開關從檔案加入。下面的指令會將 info.txt
檔案當註解加入:
rar c -zinfo.txt dummy
ch 變更壓縮檔參數。
這個指令可以用於大多數的壓縮檔變更開關,來變更壓縮檔參數。
這尤其對一些沒有專用指令的開關例如 -cl, -cu, -tl 很有用。
此指令無法對壓縮資料重新壓縮、加密或解密,也無法組合或建立分割
磁碟。如果沒有與其他開關合用,則 'ch' 指令只會複製壓縮檔資料,
不會變更。
範例:
設定壓縮檔時間與當中最新檔案一致:
rar ch -tl files.rar
cw 寫入壓縮檔註解到指定的檔案。
基於 -sc 開關規定輸出檔案格式
如果沒有指定輸出檔名,則內容資料會送到 stdout。
範例:
1) rar cw arc comment.txt
2) rar cw -scuc arc unicode.txt
3) rar cw arc
d 從壓縮檔刪除檔案。如果這個指令移除壓縮檔裡所有檔案,則空壓縮檔
也會移除。
e 解壓縮檔案,忽略壓縮路徑。
解壓縮檔案,但忽略其路徑資訊,因此所有檔案都解壓縮到相同的目錄。
如果要包含完整路徑的解壓縮,請改用 'x' 指令。
範例:
rar e -or html.rar *.css css\
這會從 html.rar 壓縮檔解壓縮所有 *.css 到 'css' 資料夾,不管原先
的路徑為何。如果遇到相同檔名,會自動重新命名。
f 整理壓縮檔中的檔案。更新壓縮檔內容比較舊的檔案。此指令不會加入新檔
案到壓縮檔中。
i[i|c|h|t]=<字串>
在壓縮檔中尋找字串。
支援下列選用參數:
i - 不區分大小寫搜尋 (預設);
c - 區分大小寫搜尋;
h - 十六進制搜尋;
t - 使用 ANSI、UTF-8, UTF-16 及 OEM 字元表 (僅限 Windows);
如果沒有指定參數,可以使用簡化的指令語法 i<字串> 代替 i=<字串>
可以搭配 't' 修飾詞伴隨其他參數,例如,ict=string 處理上面的字元表
做區分大小寫搜尋。
例如:
1) rar "ic=first level" -r c:\*.rar *.txt
處理在 C 磁碟中的 *.rar 壓縮檔,其中 *.txt 檔案含有 "first level"
字串者做區分大小寫搜尋。
2) rar ih=f0e0aeaeab2d83e3a9 -r e:\texts\*.rar
在 e:\texts 目錄中的 RAR 壓縮檔搜尋十六進制 f0 e0 ae ae ab 2d 83 e3 a9
k 鎖定壓縮檔。
RAR 無法修改鎖定的壓縮檔,所以請鎖定重要的壓縮檔以防止意外被
RAR 修改。這類的保護機制在批次對壓縮檔處理 RAR 指令時很實用。
這指令並不能防止其他工具或其他人蓄意竄改,這只是為了預防被 RAR
意外修改而已。
範例:
rar k final.rar
l[t,b] 列出壓縮檔的內容 [技術性的]。檔案如同下 'v' 指令一樣列出來
,但排除檔案路徑。例如僅顯示檔案名稱。選用的技術性資訊 (
壓縮時的作業系統、結實壓縮旗標及舊版旗標) 只有在使用 't'
輔助字元時才會顯示。修飾詞 'b' 強制 RAR 僅列出簡易檔案,沒有
詳細資訊。
l[t[a],b]
列出壓縮檔內容 [技術性[詳細資料], 精簡資料]
'l' 指令列出壓縮檔內容、大小、日期、時間及名稱,一行一個檔案。
如果檔案加密,則該行會用 '*' 字元開頭。
'lt' 會使用多行顯示檔案的詳細資訊。此資訊包含檔案雜湊驗算值、
所在的作業系統、壓縮選項及其他參數。
'lta' 提供資訊細節,不只檔案,也包含服務的檔頭,例如 NTFS 資料流
或檔案安全資料。
'lb' 列出精簡的檔案路徑及名稱,一行個檔案,無其他資訊。
您可以使用 -v 開關來列出所有分割檔的內容: rar l -v vol.part1.rar
'lt', 'lta' 及 'lb' 指令分別等於 'vt', 'vta' 及 'vb'
m[f] 移動到壓縮檔 [只有檔案]。移動檔案及目錄結果,而該目錄及檔案
在成功完成封裝動作之後便刪除。如果應用 'f' 輔助字元以及或是
加入 '-ed' 開關,則目錄不會移除。
p 列印檔案到標準輸出裝置。
您可以搭配 -inul 開關使用,停用所有 RAR 訊息並只列印檔案資料。
如果您要送檔案至 STDOUT 供管道使用,這很重要。
r 修復壓縮檔。壓縮檔修復分兩階段進行。首先,先掃描毀損的壓縮檔其
中內含的修復記錄 (參見 'rr' 指令)。如果壓縮檔含有之前建立的修復
記錄,而且毀損資料區域是連貫的,而且大小小於修復記錄的錯誤修正
代碼大小,則能成功重建資料的機會變大增。
當完成此階段,會建立新的壓縮檔,命名為 fixed.arcname.rar,其中
'arcname' 指的是原始 (毀損) 的壓縮檔名稱。
如果毀損的壓縮檔沒有修復記錄,或者因為嚴重損壞無法全部修復,就會
啟動第二階段。這階段只會重建壓縮檔結構,那些雜湊驗算發生錯誤的檔
案無法救回,但其他因檔案結構破壞,導致無法存取的無損檔案會因此得
救。這對大部分的非結實壓縮檔有效。此階段無法適用於檔頭加密的壓縮
檔,這種格式只有靠修復記錄才能運作。
當完成第二階段,重建的壓縮檔會存成 rebuilt.arcname.rar其中
'arcname' 指的是原始 (毀損) 的壓縮檔名稱。
預設的情況,修復的壓縮檔會放在當下的目錄。您可以加上 destpath\
參數來指定到其他目錄。
範例:
rar r buggy.rar c:\fixed\
修復 buggy.rar 並將結果放在 'c:\fixed' 路徑。
rc 利用修復分割檔案 (.rev) 來重建遺失及毀損的分割檔案。您需要
指定任何存在的分割檔案作為壓縮檔名稱,例如:
rar rc backup.part03.rar
關於修復分割檔案的資料請參閱 'rv' 的指令描述。
rn 重新命名壓縮檔。
指令語法是:
rar rn <壓縮檔名> <原始檔名1> <目標檔名1> ... <原始檔名N> <目標檔名N>
例如,下列指令:
rar rn data.rar readme.txt readme.bak info.txt info.bak
在壓縮檔 data.rar 中將把 readme.txt 重新命名為 readme.bak 並
把 info.txt 重新命名為 info.bak。
可以對原始檔明和目標檔名使用萬用字元來簡化重新命名,像是改變
副檔名。例如:
rar rn data.rar *.txt *.bak
將把所有的 *.txt 檔重新命名為 *.bak。
RAR 不會檢查目標檔名是否已存在壓縮檔中,所以必須小心檔名重
複。特別是使用萬用字元時特別重要。這個指令有潛在的危險,因
為用錯萬用字元會損壞所有的壓縮檔名。
rr[N] 選用,多餘的資訊 (修復記錄) 可加入到壓縮檔中,雖然微幅增加
壓縮檔大小,卻能在磁碟發生問題或其他形式的資料遺失中修復壓
縮檔,減少損失。這類修復毀損適用指令 "r" (repair)。
RAR 4.x 與 RAR 5.0 壓縮格式採用不同的修復記錄結構及演算法。
RAR 4.x 修復記錄以 XOR 演算法為基礎。您可以指定 4.x 修復大小
以修復區間為單位,也可以用壓縮檔大小的百分比來算。要指定修復
區間,只要將數字放在 'rr' 後面,例如 'rr1000' 指的是 1000
個區間。
要使用百分比,則要在百分比數字後面附上 'p' 或 '%' 字元,例如
'rr5p' 或 'rr5%' 指的是 5%。請注意如果在 Windows 的 .bat 及
.cmd 檔案,必須使用 'rr5%%',不能使用 'rr5%',因為指令把 '%'
當作批次的參數,所以改用 'p' 不用 '%' 的話比較不會混淆。
RAR 4.x 修復區間長度為 512 位元組。如果毀損資料為連續,則每個
區間可以協助修復 512 位元組的損毀資訊,不過這數值要是遇到多處
損毀時會低一些。最大修復區間為 524288。
4.x 修復記錄的大小,大約是
<壓縮檔大小>/256 + <修復記錄區間數>*512 位元組
RAR 5.0 修復記錄採用 Reed-Solomon 錯誤修正代碼。
其對連續毀損的能力大約等於 RAR 4.x,能修復比修復記錄略小的大小,
但在多處毀損區域的修復能力則遠比 RAR 4.x 記錄強。
RAR 5.0 記錄不採用 512 位元組區間,您只能用壓縮檔大小的百分比
來指定。只要是 RAR 5.0 格式,即便沒有出現 '%' 或 'p' 字元,RAR
仍會當百分比來處理;因此 'rr5' 跟 'rr5p' 都表示 5%。
因為服務資料的完整性,實際上的修復記錄大小只會大約相等使用者定義
的百分比大小,越小的壓縮檔誤差越大。
RAR 5.0 修復記錄大小無法超過保護的壓縮檔大小,所以您不能指定大於
100% 作為參數。越大的修復記錄,建立跟修復都越久。
RAR 5.0 修復記錄更能抵抗修復記錄本身的毀損,局部的修復記錄能發揮
局部的功能。請注意,'R' 修復指令無法復原修復記錄中毀損的區塊,只
能針對檔案資料毀損才有效。等壓縮檔順利修復,您可能需要重新為儲存
的檔案建立修復記錄。
4.x 跟 5.0 的記錄遇到毀損的壓縮檔,只要資料位置沒有位移,都能有
不錯的表現。如果您從毀損的儲存媒體中,使用特殊的軟體將資料複製出
來,請儘量選擇能將毀損的區域用 00 或其他資料填補,不要將片段分別
複製出來,因為這樣可以保存原始資料的位置。然而,如果資料已經發生
位移,無論是合理長度的截斷或伸長,兩版本都能嘗試進行修復,而 RAR
5.0 修復記錄在處理截斷或伸長時比 RAR 4.x 表現得更有效率。
如果您單純使用 'rr' 指令,沒有帶參數,RAR 會將修復記錄大小定為壓
縮檔大小的 3%。
範例:
rar rr5p arcname
加入修復記錄,大小為壓縮檔大小的 5%
rv[N] 建立修復分割 (.rev) 檔,以便將來用於重建遺失及毀損的分割檔。
這個指令僅能被多分割壓縮所識別,而且您要指定第一個分割檔的檔
名。
例如:
rar rv3 data.part01.rar
這個功能可能對檔案備份有很大用途,或者,您發送一個多分割壓
縮檔給新聞群組可是有些使用者沒有收到部分檔案。重新發送修復
分割檔來代替一般的分割檔可以減少重新發送的檔數。
每個修復分割檔可以重建一個遺失或毀損的 RAR 分割檔。例如,您
有 30 個分割檔和 3 個修復分割檔,您可以重建任何 3 個遺失的分
割檔。如果 .rev 檔案的數量少於遺失的分割檔,那麼無法重建。
RAR 4.x 中,正常分割檔和修復分割檔的總數不能超過 255,而 RAR
5.0 則為 65535。
原始的 RAR 分割檔在建立修復區塊後無法更動。修復演算法同時使
用位於 REV 檔案及 RAR 分割檔的資料來重建遺失的 RAR 分割檔。
所以如果您變更 RAR 分割檔,例如: 鎖定檔案、建立 REV 檔案之後,
修復處理會失敗。
進一步來說,RAR 5.0 修復分割檔也儲存服務資訊,例如保護的 RAR
檔之雜湊驗算值,因此會略大於其保護的 RAR 分割檔大小。如果您
計畫要複製 RAR 及 REV 檔至抽取式磁碟,您必須將這部分考慮進去,
將 RAR 分割檔大小指定成比媒體大小少幾個 KB。
選用的參數 <N> 用來指定建立的修復分割數目,且該數目必須小於
這批 RAR 分割的總數。您也可以為參數附加一個百分比或 'p' 字元,
這種情況下建立的 .rev 檔數將會等於 RAR 分割總數的百分比。
例如:
rar rv15% data.part01.rar
RAR 重建遺失或毀損的分割檔可以經由使用 'rc' 指令或是在如果找
不到下一分割檔,並找到了需要數量的 .ref 檔時,自動進行。
原始毀損分割檔在重建前重新命名為 *.bad。例如,volname.part03.rar
會改為 volname.part03.rar.bad。
s[名稱] 轉換壓縮檔成為自解壓縮檔類型。結合自解模組的壓縮檔。(使用預
設模組 default.sfx 或在選項指定)。根據預設值,WinRAR 使用在
RAR 壓縮檔的 SFX 模組檔案為 default.sfx,它必須與 winrar.exe
存在於相同的資料夾中以及,Unix - 在使用者的 Home 目錄。
s- 從現有的自解檔移除 SFX 模組。
RAR 會建立不含自解模組的新壓縮檔,而原有的自解壓縮檔並不會
刪除。
t 測試壓縮檔。為了驗證指定的檔案,這個指令會執行虛擬檔案解壓縮
,但不會寫入輸出資料流。
範例:
測試在目前目錄的壓縮檔:
rar t *
或在 Unix 時:
rar t '*'
以目前目錄開始,測試全部的子目錄壓縮檔:
rar t -r *
或在 Unix 時:
rar t -r '*'
u 更新壓縮檔內容。加入壓縮檔不含的檔案,以及更新較舊的版本。
v[t[a],b]
冗長式的壓縮檔內容清單 [技術性[詳細資料], 精簡資料]
'v' 指令列出壓縮檔內容、大小、封裝大小、壓縮率、日期、時間、雜湊
驗算及檔名,一行一個檔案。如果檔案加密,則該行會用 '*' 字元開頭。
BLAKE2sp 雜湊驗算只會顯示前面兩個及後面一個符號。
'vt' 會使用多行顯示檔案的詳細資訊。此資訊包含檔案雜湊驗算值、
所在的作業系統、壓縮選項及其他參數。
'vta' 提供資訊細節,不只檔案,也包含服務的檔頭,例如 NTFS 資料流
或檔案安全資料。
'vb' 列出精簡的檔案路徑及名稱,一行個檔案,無其他資訊。
您可以使用 -v 開關來列出所有分割檔的內容: rar v -v vol.part1.rar
'vt', 'vta' 及 'vb' 指令分別等於 'lt', 'lta' 及 'lb'
x 從壓縮檔解壓縮並使用完整路徑
範例:
1) 解壓縮 10cents.txt 至當前目錄,不顯示壓縮檔註解
rar x -c- dime 10cents.txt
2) 從 docs.rar 解壓縮 *.txt 至 c:\docs 路徑
rar x docs.rar *.txt c:\docs\
3) 從 docs.rar 解壓縮所有內容到當前目錄
rar x docs.rar
開關 (與指令結合使用):
-? 顯示指令及開關的說明。當未輸入或是輸入無效的指令行選項時也會
顯示。
-- 停止掃瞄開關
這個開關會告知 RAR 在指令行已沒有其他的開關了。它是使用在,
如果壓縮檔的名稱或檔案名稱是從「-」字元開始的時候。沒有 "--"
開關時,則會將此類名稱當成開關來處理。
範例:
從目前資料夾加入全部檔案到結實壓縮檔 -StrangeName
RAR a -s -- -StrangeName
-@[+] 停用 [啟用] 檔案清單
RAR 把指令行參數以 '@' 字元起始者當作檔案清單。因此預設之下
RAR 遇到 '@filename' 參數時會企圖讀取 'filename' 檔案清單。
不過要是 '@filename' 檔案不存在,RAR 則改認為參數為檔案
'@filename',不再讀取檔案清單。
開關 -@[+] 允許對參數開頭為 '@' 字元者避免認知混淆。
如果您指定 -@,則所有此開關之後的參數會以檔名處理,不再認定
為檔案清單。
如果您指定 -@+,則所有此開關之後的參數會以檔案清單處理,不
再認定為檔名。
此參數不會影響在這之前的參數。
範例:
test the archived file '@home'
rar t -@ notes.rar @home
-ac 壓縮之後檔案的「保存」屬性將會被清除
(只有 Windows 版本有效)。
如果壓縮時指定 -ac,則完成壓縮的檔案會清除「保存」屬性。解壓
縮時,-ac 會清除解壓縮檔的「保存」屬性。此開關不會影響目錄屬
性。
-ad[1,2] 替代目標路徑
在解壓縮一組壓縮檔時,該參數很實用。
開關 -ad 與 -ad1 能對不同壓縮檔解壓時個別建立資料夾,這些個別
的資料夾 -ad 會放在指定的目標路徑中,而 -ad1 則放在與壓縮檔相
同的目錄中。
開關 -ad2 將解壓縮的檔案直接放到每個壓縮檔所在的目錄中,不會
再建立個別的目錄。
-ad1 和 -ad2 開關都會忽略目標路徑參數。
例如:
1) rar x -ad *.rar data\
RAR 將為在 'data' 下每一個未壓縮的壓縮檔案建立子資料夾。
2) rar x -r -ad1 arc\*.rar
RAR 會遞迴掃描 'arc' 目錄,找 *.rar 壓縮檔,並在每個壓縮檔
目錄建立子目錄。
-ag[格式] 以目前日期產生壓縮檔名稱
當建立壓縮檔時,以格式「YYYYMMDDHHMMSS」附加到目前日期字串,
這對於每日的備份是有用的。
附加字串是由「格式」參數所定義,或者如果不存在時,使用
「YYYYMMDDHHMMSS」。格式字串可以包含下列的字元:
Y - 年
M - 月
MMM - 文字式的月份名稱 (Jan, Feb, 等)
W - 星期 (文字) (一週起點為星期一)
A - 星期 (數字) (星期一為 1, 星期日為 - 7)
D - 每月的第幾天
E - 每年的第幾天
H - 時
M - 分 (如果接續在時後面,則視為分看待)
I - 分 (不管小時的位置,認定為分)
S - 秒
N - 壓縮檔編號。WinRAR 對既有的檔案尋找賦予的名稱,如果找到,
則增加壓縮檔編號直到檔名唯一為止。建立分割檔時格式字元
"N" 不支援
當處理非壓縮操作時,例如解壓縮,RAR 選擇目前存在的壓縮
規則第一個未使用的名稱,或者沒有此壓縮檔存在時則設定 N
為 1。
每一個上述的格式字串各代表加入壓縮檔檔名的一個字元。例如,使用
WW 代表兩位數星期數,YYYY 定義四位數年份。
如果格式字串的第一個字元是 '+',則日期字串及基本壓縮檔名的順
位就對調。因此日期就會拿來當作壓縮檔名稱。
如果格式字串第一個字元是 'F',則其餘字元指定預設格式字串給 -ag
開關。這個 -agf<預設格式> 只有放到 rar.ini 設定檔或者 RAR 環境變
數時才有特殊值。例如,我們設置 RAR 環境變數為 -agfYYYY-MMM-DD,
則我們可以用 -ag 不帶變數,就假設為 YYYY-MMM-DD 格式字元。
格式字串可以包含選用文字,並包含於 '{' 及 '}' 字元中。此文字會插
入壓縮檔名中。
所有其他加入壓縮檔的字元則不會變更。
如果您要處理已經存在的壓縮檔,請小心使用 -ag 開關。基於前次使用
-ag 的格式字串及時間的不同,所產生的壓縮檔跟現存的可能不一樣。要
是這樣,RAR 會產生或開啟新的壓縮檔,不會處理已存在的檔案。您可以
使用 -log 開關來將產生的壓縮檔名寫到檔案,並從檔案讀取以備之後的
處理。
範例:
1) 使用預設的 YYYYMMDDHHMMSS 格式
winrar a -ag backup
2) 使用 DD-MMM-YY 格式
winrar t -agDD-MMM-YY backup
3) 使用 YYYYMMDDHHMM 格式,要放在 'backup' 之前
winrar a -ag+YYYYMMDDHHMM backup
4) 使用 YYYY-WW-A 格式,包含欄位敘述
rar a -agYYYY{年}-WW{週}-A{工作週} backup
5) 使用 YYYYMMDD 及壓縮檔編號。萬一一天使用多次 YYYYMMDD 格式
遮罩,則建立唯一檔名。
rar a -agYYYYMMDD-NN backup
-ai 忽略檔案屬性
解壓縮時使用此開關,RAR 不會引用儲存於壓縮檔內的檔案屬性。使
用此開關,解壓縮出來的檔案會遵照作業系統預設該要賦予的屬性。
如果此開關用於壓縮的時候,會儲存預先定義的值,特別是檔案及資料
夾,而不會使用實際的屬性。
在視窗中影響保存、系統、隱藏及唯讀等屬性。在 Unix 則為使用者、
群組及其他檔案權限。
-ao 加入有「保存」屬性設定的
(只有 Windows 版本有效)。
如果壓縮時指定 -ao,則只有具有「保存」屬性的檔案會加入壓縮檔
中。此開關不會影響目錄屬性,因此無論目錄的屬性是什麼都會加入。
如果想不處理所有目錄記錄,您也可以加入 -ed 開關。
範例:
加入磁碟機 C: 具有設定「保存」屬性的全部檔案到 "f:backup" 並
清除檔案的「保存」屬性
rar a -r -ac -ao f:backup c:\*.*
-ap 設定內部壓縮檔路徑。當加入檔案到壓縮檔以及當解壓縮時從檔案名
稱移除時,將會使用與此開關結合的路徑
舉例來說,如果您希望加入檔案 readme.txt 到壓縮檔 release 的資
料夾 DOCS\ENG,您可以執行:
rar a -apDOCS\ENG release readme.txt
或解壓縮 ENG 到目前資料夾:
rar x -apDOCS release DOCS\ENG\*.*
-as 壓縮檔內容同步化
如果此開關使用於壓縮時,在目前加入的檔案清單中不存在的壓縮後
檔案,將會從壓縮檔中刪除。它可以很方便的與 -u 開關結合,用來
同步化壓縮檔及壓縮的資料夾的內容。
舉例來說,在下面指令之後:
rar a -u -as backup sources\*.cpp
壓縮檔 backup.rar 將只會包含來源資料夾的 *.cpp 檔案,其他的
全部檔案將會從壓縮檔中刪除。它看起來就好像建立新壓縮檔,但有
個重要的例外: 如果從上次備份後沒有修改過的檔案,這項作業會比
建立新壓縮檔的作業快上許多。
-cfg- 忽略讀取組態設定及環境變數。
-cl 將檔名轉換成為小寫。
-cu 將檔名轉換成為大寫。
-c- 不啟動註解顯示。
-df 壓縮後刪除壓縮檔。
移動檔案到壓縮檔。此開關結合指令 a 執行時的動作相同於指令 m。
-dh 開啟共享的檔案。
允許處理由其他應用程式開啟來寫入的檔案。
當應用程式允許檔案讀取權限,但所有檔案存取又被禁止,檔案開啟
仍為失敗時,這個開關很有用。
這個開關是有危險性的,因為它允許加入檔案到壓縮檔,而檔案可能
正由其他應用程式進行修改中。使用時請小心。
-dr 刪除檔案至資源回收筒
壓縮後刪除來源檔案,並移至資源回收筒。僅支援於 Windows 版本。
-ds 在結實壓縮檔時不排序壓縮的檔案。
-dw 壓縮後抹除檔案
壓縮後刪除檔案。刪除之前先以零位元組資料複寫磁區位置,且破壞
原有檔案且改名成暫時檔名,防止資料被救回。
請注意此方案適用於一般硬碟,但可能無法於固態儲存裝置取代檔案
資料,因為 SSD 使用分層技術,用更複雜的資料處理方法。
-ed 不加入空白的目錄
此開關指示,如果目錄是空的,不要將它加入壓縮檔。當解壓縮這類
壓縮檔時,RAR 根據內含檔案的路徑建立非空白目錄。空白目錄的資
訊會消失。除了名稱 (存取權限、資料流等) 之外的所有非空白目錄
也會消失。請只有在不需要這些資訊時才使用這個項目。
如果 -ed 與 'm' 指令或 -df 開關合用,RAR 不會移除空白目錄。
-en 不加入「壓縮檔尾」區塊
不支援 RAR 5.0 壓縮檔。
預設情況下,在新建或更新的壓縮檔的結尾,RAR 會加入「壓縮檔
尾」區塊。這樣允許安全地跳過外部資料如數位簽章等,但是在一些
特殊的情況下停用該特性會變得很有用。例如,如果經由不可靠的連
線,在兩個系統間傳輸一個壓縮檔,同時發送者在壓縮檔裡加入了新
檔,很重要的一點是,確保在傳輸過程中已經接收的部分不會被另一
端所修改。
這個開關不能用於分割檔,因為壓縮檔的結束部分包含著正確處理分
割檔案的重要資訊。
-ep 從名稱中排除路徑。包含此開關時,檔案在加入壓縮檔時不會包含路
徑資訊。這可能會有在壓縮檔中,存在數個相同名稱的結果。
如果在解壓縮時使用,會忽略解壓縮檔的路徑,讓所有檔案都放在相
同目錄下。
-ep1 從名稱排除基本目錄,不儲存或解壓縮在指令行輸入的路徑。遇到萬
用字元時會忽略。
範例:
1) 全部在目錄 tmp 的檔案及目錄將會加入到壓縮檔 'test',但不包
含路徑 'tmp\'
rar a -ep1 -r test 'tmp\*'
這相當於指令:
cd tmp
rar a -r ..\test
cd ..
2) 解壓縮符合 images\* mask 的檔案到 dest\ 目錄,但從建立的檔
案移除 'images\' 目錄:
rar x -ep1 data images\* dest\
-ep2 擴大成完整路徑。當壓縮時儲存完整檔案路徑 (除了磁碟機代號和前
導的分隔符號)。
-ep3 擴大成完整路徑,包含磁碟機代號。僅提供 Windows 版本適用。
本開關儲存壓縮時的完整路徑,包含磁碟機代號。磁碟機代號分隔 (
冒號) 以底線替代。
如果您使用 -ep3 來解壓縮,會自動將底線變回冒號,來將解壓縮檔案
還原回當初的路徑及磁碟。如果使用者也指定目的地路徑,則會被忽略
。
當初壓縮時將 UNC 路徑從 \\server\share 轉成 __server\share,則
在解壓縮時將會還原回原來的狀態。
此開關能協助您備份許多磁碟至一個壓縮檔中,例如,您可以執行:
rar a -ep3 -r backup.rar c:\ d:\ e:\
來建立備份,而:
rar x -ep3 backup.rar
來還原。
但是請注意您一定要確定解壓縮檔沒有包含惡意的程式才能用 -ep3。
也就是說,請用於自己建立的壓縮檔才值得信賴。本開關能取代在您電
腦任何路徑的任何檔案,一般來說適用於備份及還原的用途。
-e[+]<屬性>
指定檔案排除屬性遮罩。
是十進位,八進位 (以 '0' 前導) 或十六進位 (以 '0x' 前導) 的數
字格式。
預設值 <attr> 前面沒有 '+',此開關定義例外的遮罩。如果 bitwise
的結果及在 <atr> 和檔案之間屬性不為 0, 那麼檔案將不會被處理。
如果出現 '+' 符號,就可以指定包含的遮罩。只有符合至少一項遮罩
規定的檔案才會被處理。
在 Windows 版本,也可以使用代替數位的遮罩符號 D, S, H, 及
R 指示目錄及檔案的系統,隱藏,和唯讀屬性。給予的屬性順序並不
重要。Unix 版本支援 D 和 V 符號來定義目錄及裝置屬性。
您可以於同一個指令中同時使用 -e<attr> 及 -e+<attr>。
例如:
1) 壓縮檔只有目錄名稱,沒有內容
rar a -r -e+d dirs
2) 不要壓縮系統及隱藏檔:
rar a -esh files
3) 不要解壓縮唯讀檔:
rar x -er files
-f 整理檔案。可使用於壓縮檔解壓縮或是建立時。指令字串 "a -f"
對等於指令 f。您也可以使用開關 "-f" 於指令 m。假如開關 "-f"
使用於指令 x 或 e,此時只有舊檔案會被從壓縮檔解開的新版本給取
代。壓縮後的檔案,沒有符合的未封裝檔案,則不會解壓縮。
-hp[p] 檔案資料和檔頭全部加密。
這個開關和 -p[p] 很相似,但是開關 -p 只加密檔案資料,而保留如
檔名等其他資訊。這個開關加密包括檔案資料、檔名、大小、屬性、
註解和其他資料區塊等所有敏感的文件範圍。所以提供了更高的保密
等級。使用了 -hp,沒有密碼甚至連壓縮檔的檔案清單都無法看到。
例如:
rar a -hpfGzq5yKw secret report.txt
使用密碼 'fGzq5yKw' 將檔案 report.txt 加入到加密壓縮檔
secret.rar 裡。
-ht[b|c]
選擇雜湊類型 [BLAKE2,CRC32] 位檔案進行雜湊驗算
RAR 壓縮檔中,每個檔案的正確性受到雜湊驗算的保護。
預設的情況下,RAR 使用 CRC32 函數來計算雜湊。RAR 5.0 壓縮檔格式
也支援選用 BLAKE2sp 取代 CRC32 計算雜湊。
-htb 開關可以指定使用 BLAKE2sp,-htc 指定使用 CRC32 雜湊函數。
既然 CRC32 是預設的演算法,您可以只將 -htc 用於取代 RAR 設定中
指定的 -htb 設定值。
CRC32 的輸出為 32 位元長度。CRC32 屬性適合偵測大部分的意外資料
錯誤,但不足以認證檔案資料。換言之,如果兩個檔案有一樣的 CRC32,
並不能保證兩個檔案內容一致。
BLAKE2sp 的輸出為 256 位元。做為一個強式加密雜湊函數,比較能夠
保證相同 BLAKE2sp 者為相同檔案。BLAKE2sp 錯誤偵測能力也比短式
的 CRC32 強。
既然 BLAKE2sp 輸出比較長,-htb 開關運作的結果會讓檔案略大。
如果壓縮檔頭沒有加密 (沒有使用開關 -hp),加密的 RAR 5.0 雜湊驗算
會再利用特別的密碼運算法加以修改,避免使用雜湊驗算值猜密碼。請不
要寄望這種加密檔案的雜湊驗算會跟一般 CRC32 與 BLAKE2sp 值雷同。
此開關只支援 RAR 5.0 格式,所以您需要使用 -ma 開關來調用。
您可以使用 'vt' 或 'lt' 指令來檢視壓縮檔案的雜湊驗算值。
範例:
rar a -ma -htb lists.rar *.lst
會使用 BLAKE2sp 的雜湊驗算將 *.lst 加入至 lists.rar
-id[c,d,n,p,q]
顯示或停用訊息。
開關 -idc 不顯示版權字串。
開關 -idd 在操作完畢不顯示 [完成] 字串。
開關 -idn 在建立、測試或解開壓縮檔時停用輸出壓縮檔名稱。這樣也
會影響到其他壓縮檔處理指令。這不會隱藏其他訊息與總百分比指標。
-idn 會造成較小的視覺瑕疵,例如百分比指標會蓋到錯誤訊息的最後幾
個字元。
開關 -idp 不顯示百分比進度。
開關 -idq 啟用安靜模式,所以只顯示錯誤訊息及問題。
您可以一次使用多個參數,例如 -idcdp 是有效的。
-ieml[.][位址]
經由電子郵件發送壓縮檔。僅對 Windows 版本有效。
為電子郵件加入由更新或新建所建立的壓縮檔做為附件。您必須有相容
MAPI 的電子郵件客戶端程式來使用這個開關 (目前大部分的電子郵件
應用程式都支源 MAPI 介面)。
您可以在開關裡直接輸入收件人的電子郵件位址或是留空,後者您的電
子郵件程式會提示您輸入。
如果您在 -ieml 後面加一個 '.' 字元,在成功附到電子郵件後,將會
刪除壓縮檔。如果在分割壓縮時使用了這個開關,那麼每一個分割檔將
會附加到獨立的電子郵件上。也可以用逗號或分號指定多個電子郵件。
-ierr 傳送所有的錯誤到 stderr。
-ilog[名稱]
記錄錯誤到檔案。
寫入錯誤資訊到 rar.log 檔,如果選用的參數 [名稱] 沒有指定,則在
以下預設目錄下建立日誌:
Unix: .rarlog 檔案,位於使用者的根目錄;
Windows: rar.log 檔案,位於 %APPDATA%\WinRAR 目錄。
如果 [名稱] 參數有檔名沒有路徑,RAR 會從上述的預設目錄,以指定的
名稱建立日誌。如果您要自己指定日誌的位置,請寫明確的檔案路徑及名
稱。
預設的情況下,日誌檔採用 UTF-16 低字元編碼,但可以使用
-sc<字元集>g 來修改,例如 -scag 使用原生單位元編碼。
例如:
rar a -ilogc:\log\backup.log backup d:\docs
會在錯誤發生時建立 c:\log\backup.log 記錄檔。
-inul 關閉全部的訊息。
-ioff[n]
完成操作時關閉電腦。
使用 -ioff 或 -ioff1 關閉電腦,-ioff2 休眠,-ioff3 睡眠,-ioff4
重新啟動。作業系統必須能支援該電源狀態。
如果許多 RAR 檔案都使用此開關啟動,則電腦會在最後一個工作結束後
關閉。
只適用 Windows 版本。
-isnd[-]
控制通知音效。
使用 -isnd 開啟通知音效,-isnd- 停用通知音效。
-iver 顯示版本號碼,然後離開。您可以只用 "RAR -iver"
-k 鎖定壓縮檔,任何會變更壓縮檔的指令一律忽略。
-kb 保留損壞的解壓縮檔案。
RAR 在預設的時候,解壓縮有雜湊驗算錯誤的檔案會予刪除,開關 -kb
則指定有 CRC 錯誤時不要刪除。
-log[格式][=名稱]
將名稱寫到記錄檔。
此開關允許寫壓縮檔及一般檔名至指定的文字檔,用於壓縮、解壓縮、
刪除、列出清單等指令。其行為定義於 '格式' 字串,能複選包含以下
的字元:
A - 將壓縮檔名稱寫至記錄檔。如果 RAR 建立或處理分割檔,則所有
分割檔名都會記錄。
F - 將已處理的檔名寫至記錄檔。包含加入壓縮檔的檔案,解壓縮、刪
除或列出壓縮檔內的檔案。
P - 如果指定的記錄檔名稱已經存在,則將記錄附加在此檔,而非新建
一個。
U - 以 Unicode 格式寫資料。
如果既沒指定 'A' 也沒指定 'F',則會指派使用 'A'。
'名稱' 參數允許指定記錄檔名稱。格式一定要始於 'fmt' 字串,分隔
於 '=' 字元。
如果不存在 '名稱' 參數,RAR 則使用預設的 rarinfo.log 檔名。
可以在相同的指令行指定多個 -log 開關。
當您批次用 -ag 或 -v 開關於指令碼時,此開關的搭配越顯有價值。
您可以在建立壓縮檔時指定 -loga=arcname.txt,然後使用適合的指令
從 arcname.txt 讀取 RAR 產生的壓縮檔名。例如,於 Windows 批次
檔可以使用: set /p name=<arcname.txt
範例:
1) 將建立的分割檔檔名寫到 vollist.txt:
rar a -v100m -loga=vollist.txt volume.rar c:\data
2) 將產生的壓縮檔名以 Unicode 寫到 backup.txt:
rar a -ag -logau=backup.txt backup.rar myfiles\*
3) 將測試的分割檔檔名寫到 vollist.txt,並將分割檔內測試的檔名
寫到 filelist.txt:
rar t -log=vollist.txt -logf=filelist.txt volume.part01.rar
-m<n> 設定壓縮方式:
-m0 僅儲存 加入檔案到壓縮檔但是不壓縮
-m1 速度最快 最快速的方法 (最低的壓縮)
-m2 速度快 快速壓縮法
-m3 一般 一般 (預設) 壓縮方法
-m4 壓縮佳 良好的壓縮方法 (較高的壓縮)
-m5 壓縮最佳 最佳的壓縮方法 (最高壓縮但速度最慢)
如果這個開關未指定,RAR 使用 "-m3" 方式(一般壓縮)。
-ma[4|5]
指定壓縮格式的版本
預設的情況下,RAR 以 RAR 5.x 格式建立壓縮檔。
使用 -ma4 可以建立 RAR 4.x 壓縮檔。
使用 -ma5 或只用 -ma 的時候可以儲存在設定檔的 -ma4 參數,強
制 RAR 使用取代 RAR 使用 RAR 5.0 壓縮格式。
此開關只適用於建立新的壓縮檔。更新現有的壓縮檔時會忽略此開關。
-mc<參數>
設定進階壓縮參數
這個開關主要用於基準測試 (benchmark) 和試驗,通常在真實環境
下,最好讓 RAR 自動選擇最佳的參數。請注意,不正確地使用這個
開關可能會引起非常嚴重的性能和壓縮比下降,所以只有你完全明白
怎麼做的情況下,才使用這個開關。
語法如下:
-mc[參數1][:參數2][模組][+ 或 -]
這裏 <模組> 是一個特定範圍表示已經被設定好的一部分壓縮演算法。
它的值如下:
A - 音訊壓縮
C - 真彩 (RGB) 資料壓縮
D - delta 壓縮
E - x86 可執行程式壓縮
T - 文字壓縮。
RAR 5.0 壓縮格式只支援 'D' 和 'E' 值。
開關末端的 '+' 符號,表示應用所選的演算法模組來處理所有的資
料。而 '-' 符號則停用該模組。如果沒有指定符號,那麼 RAR 將
會根據資料和當前的壓縮演算法自動選擇模組。
開關 -mc- 停用所有可選的模組,只允許一般的壓縮演算法。
<參數1> 和 <參數2> 根據模組而決定的參數,其描述如下:
音訊壓縮、delta 壓縮:
<參數1> 是頻道的位元組數 (可以是 1-31)。
RAR 分離多位元組頻道為單位元,例如,RAR 把兩個 16 位的音訊頻
道當作四位元的頻道。
<參數2> 忽略。
x86 可執行程式壓縮,真彩 (RGB) 資料壓縮:
<參數1> 和 <參數2> 都忽略。
文字壓縮:
文字壓縮演算法為純文字資料提供顯著的高壓縮比。但在多核或多處
理器的環境下,與一般演算法相比,因為無法有效調用數個 CPU 核
心,會表現得比較花時間,這也就是為什麼文字壓縮在預設之下為停
用。您可以指定 -mct 開關來允許 RAR 自動為適合的資料選用此演算
法,而 -mct+ 開關則會強制所有資料都用文字壓縮。
開關-mct 也可以包含 <參數1> 及 <參數2>,因此完整語法為
-mc[參數1][:參數2]t[+ 或 -]
<參數1> 是 PPM 演算法的階數 (可以是 2-63)。
通常高一些的值可以稍微提高冗餘數據的壓縮比,但是只有給 PPM
提供充足記憶體才可以。記憶體不足的情況下,可能會起反作用。
過高的階數會降低壓縮和解壓縮的速度。
<參數2> 以兆為單位分配給 PPM 演算法的記憶體(1-128)。
高一些的值可以提高壓縮比,但是要注意在壓縮和解壓縮時 PPM 將
使用同樣大小的記憶體空間,所以如果你在建立壓縮檔時,分配太多
的記憶體空間的話,別人在擁有較少記憶體的電腦上解壓縮該壓縮檔
時,可能會有問題。解壓縮雖然可以透過使用虛擬記憶體進行,但是
可能會變得很慢。
例如:
1) 開關 -mc1a+ 對所有資料強制使用 8 位元單聲道音訊壓縮演算法。
2) 開關 -mc10:40t+ 強制對所有資料使用文字壓縮演算法,設定壓
縮階數為 10 並且分配 40MB 的記憶體空間。
3) 開關 -mc12t 設定文字壓縮演算法使用的階數為 12,並且由 RAR
決定何時使用該演算法。
4) 開關 -mct -mcd- 讓 RAR 為適合的資料使用文字壓縮法,並停用
delta 壓縮演算法。
-md<n>[k,m,g]
選擇字典檔大小
可調整的字典檔是壓縮演算法中,用來尋找和壓縮重複資料特徵的
記憶體。如果壓縮的檔案大小,或者結實壓縮檔的總大小比字典檔
大時,則增加字典檔大小從某個角度而言會增加壓縮率、降低壓縮
速度、提高對記憶體的需求。
對 RAR 4.x 壓縮檔格式,字典檔大小可以為:
64 KB, 128 KB, 256 KB, 512 KB, 1 MB, 2 MB, 4 MB
對 RAR 5.0 壓縮檔格式,字典檔大小可以為:
128 KB, 256 KB, 512 KB, 1 MB, 2 MB, 4 MB, 8 MB, 16 MB,
32 MB, 64 MB, 128 MB, 256 MB, 512 MB, 1 GB
您可以使用 'k', 'm' 及 'g' 等後置字元,以 KB, MB, GB 指定大小,
例如 -md64m 指的是 64 MB 字典檔。如果沒有指定後置字元,則預設
為 MB,所以 -md64m 跟 -md64 是一樣的意思。
進行壓縮時,RAR 需要大約指定字典檔大小的六倍記憶體,因此 512 MB
及 1 GB 大小只能在 64 位元 RAR 提供。解壓縮時,大約配置比字典檔
略大的記憶體,因此 32 位元跟 64 位元版本都能解開所有大於 1 GB
字典檔的壓縮檔。
如果結實壓縮檔內所有來源檔的大小總和或非結實壓縮檔內的最大來源
檔都比字典檔大小的一半小,WinRAR 會降低字典檔大小,這樣可以降低
記憶體的使用量也不會影響壓縮比。
預設變動字典檔大小,RAR 4.x 中為 4 MB,RAR 5.0 中為 32 MB。
範例:
RAR a -s -ma -md128 lib *.dll
使用 RAR 5.0 格式建立結實壓縮檔,利用 128 MB 字典檔。
-ms[清單]
指定儲存的檔案類型。
指定檔類型,這些檔只儲存不壓縮。這個開關可以用來儲存已經壓縮
過的檔,有助於提高壓縮速度,不會有明顯的壓縮比損失。
選用的 <清單> 參數定義用分號隔開的檔副檔名清單。例如,-msrar;zip;
jpg 將會強迫 RAR 不壓縮只儲存所有的 RAR 和 ZIP 壓縮檔以及所有
的 JPG 圖像。清單也允許使用萬用字元,因此 -ms*.rar;*.zip;*.jpg
也一樣。可以使用多個 -ms 開關,例如 -msrar -mszip 可以用 -msrar;zip
來取代。
在 Unix 中,-ms 開關有包含許多檔案類型者,必須寫進雙引號中,以便防
止 Unix 殼層處理時將分號弄錯。也可以為每個檔案類型使用單獨的
-ms<類型> 開關。
如果沒有指定 <清單>,-ms 開關將使用預設的檔副檔名集合,包括如下的
檔案類型:
7z, ace, arj, bz2, cab, gz, jpeg, jpg, lha, lz, lzh, mp3, rar, taz,
tgz, xz, z, zip, zipx
-mt<執行緒>
設定執行緒數量。
<執行緒> 參數可以從 1 到 64,為壓縮演算法也為其他 RAR 模組定義佔用
的執行緒最大用量,以利啟動數個執行緒。當 RAR 企圖遵循此建議,有時
實際占用的執行緒會超過指定值。
<執行緒> 參數的改變會稍微影響壓縮率。所以用不同 -mt 開關設定建立的
壓縮檔,即使其他壓縮設定都一樣,結果也不盡然相同。
如果沒有指定 -mt 開關,RAR 會試著偵測可以用的處理器數量,自動選擇
最佳化的執行緒數量。
-n<f> 進階篩選的檔案
應用遮罩作為進階的篩選器,以包含檔案清單。
萬用字元可以同時應用於名稱及內含檔案的檔案遮罩。請參照開關 -x 的
描述,了解更多遮罩的語法。您可以重複多次使用 '-n' 開關。
這個開關不能取代一般的檔案遮罩。檔案仍然要寫在指令行中。這只是另
一個控制檔案處理的開關,只處理符合 -n 開關規定的檔案。有時候可以
節省指令的長度。
例如,如果您要壓縮在資料夾 Project 及 Info 中,所有 *.txt 及 *.lst
檔案,您可以輸入:
rar a -r text Project\*.txt Project\*.lst Info\*.txt Info\*.lst
或使用 -n 開關:
rar a -r -n*.txt -n*.lst text Project Info
-n@<lf> 從列出檔案讀取進階篩選遮罩
跟 -n<f> 開關很像,但是從列出檔案讀取篩選遮罩。如果您使用 -n@ 但
沒有列出檔案名稱,則會從 stdin 讀取篩選遮罩。
此開關並不會取代一般檔案清單或檔案遮罩這類需要在指令行輸入的指令。
這是一種進階的篩選器,限制只會作用在 -n 開關指定的遮罩符合的檔案。
例如:
rar a -r -n@inclist.txt text Project Info @listfile.txt
-oc 設定 NTFS 壓縮屬性。僅適用於 Windows 版本。
本開關可以在解壓縮檔案時還原 NTFS 的壓縮屬性。RAR 在壓縮檔案時
會儲存「壓縮」檔案屬性,但除非使用 -oc 開關,否則在解壓縮時不會
主動還原此屬性。
-oh 儲存永久連結作為取代檔案的連結
如果壓縮檔案包含許多永久連結,則儲存第一個壓縮的永久連結作為一
般檔案,其他同組的永久連結連到第一個檔案。當解壓縮這類的檔案,
RAR 會建立永久連結而不產生一般檔案。
您千萬不可以在建立壓縮檔之後,刪除或更名壓縮檔中第一個永久連結,
不然會令相關的連結失效。如果您修改了第一個連結,則解壓縮之後所有
連結都會解出一樣的、修改過的內容。解壓縮指定一定要包含第一個永久
連結,才能成功建立之下的永久連結。
此開關只支援 RAR 5.0 格式。
-oi[0-4][:<最小大小>]
儲存符合的檔案作為參照
開關 -oi0 (或只用 -oi-) 會關閉對相同檔案的處理,因此檔案會以一般
檔案的方式壓縮。這可以用來取代原本 RAR 設定檔規定的 -oi 值。
如果指定 -oi1 (或只用 -oi),RAR 在壓縮之前先分析檔案內容。如果找
到許多相同的檔案,則同組的第一個檔案會以一般檔案的方式儲存,剩下
的檔案都以參照的方式儲存,連結到第一個檔案。這有助於降低壓縮檔大
小,但產生許多限制。您千萬不可以在建立壓縮檔之後,刪除或更名壓縮
檔中第一個永久連結,不然會令相關的連結失效。如果您修改了第一個連
結,則解壓縮之後所有連結都會解出一樣的、修改過的內容。解壓縮指定
一定要包含第一個永久連結,才能成功建立之下的永久連結。
如果您壓縮許多相同的檔案,且之後不會變動壓縮檔,且之後會完整地解
壓縮,不會只解壓縮或忽略其中某些檔案,則建議您只用 -oi 就好。如
果所有相同檔案都小到可以擠進 -md<n> 開關指定的字典檔,則開關 -s
能比 -oi 提供更有彈性的功能。
開關 -oi2 跟 -oi1 類似,只有一點不同:
開始壓縮之前會先顯示找到的相同檔案的檔名。
開關 -oi3 及 -oi4 讓 RAR 可以產生相同檔案的清單。雖然您仍需要提
供無意義的壓縮檔名以符合指令文法,在此模式底下並不會產生壓縮檔,
沒有東西會壓縮。如果使用 -oi3,會顯示檔案名稱及大小,每個同檔案
的群組會以空行區隔。開關 -oi4 只會單純顯示檔名,忽略每個檔案群組
的第一個檔案,因此只會列出重複的檔案。
選用的 <最小大小> 值讓您定義最小檔案大小。檔案比 <最小大小> 小的
不會加入分析,也不會當作相同檔案。如果沒有出現此參數,則預設為
64 KB 大小。選擇太小的 <最小大小> 可能會增加偵測相同檔案的時間。
開關 -oi1 及 -oi2 只支援 RAR 5.0 格式。
範例:
1) rar a -oi -ma archive
儲存當前目錄的內容至 archive.rar,儲存相同檔案為參照
2) rar a -oi3:1000000 -r dummy c:\photo\*.jpg
列出所有重複的 *.jpg 檔,大於或等於 1000000 位元組,且位於
c:\photo 及其子目錄之中。
-ol[a] 以 [絕對路徑] 連結處理符號連結
儲存符號連結當成連結,所以檔案或目錄內容不被壓縮。
在 Windows 版本,這也將再解析點儲存為連結。這類的壓縮檔在解壓縮時
會解析成符號連結或再解析點。
在 Unix 中 RAR 4.x 與 RAR 5.0 壓縮檔都支援,而 Windows 中只有 RAR
5.0 支援。
在 Windows 中您可能需要以系統管理員身分執行 RAR 才能在解壓縮時建
立符號連結。
當壓縮時使用 -ol 開關,RAR 不管目標為何,加入所有連結。解壓縮時,
預設的情況下 RAR 略過指向目標目錄之外的符號連結,使用絕對路徑或
連結目標只以 ".." 表示,或其他潛在危險的連結參數。您可以使用 -ola
開關啟用解壓縮這類的連結。
連結指向解壓縮目標以外的目錄會出現安全性風險。請務必在確定壓縮檔
內容為安全時才啟用這些解壓縮,例如您自己的備份。
無論 -ol 或 -ola 開關的設定為何,RAR 解壓縮時會認定連結為安全。
-oni 允許潛在不相容名稱
因為 NTFS 檔案系統允許檔名後面存在空格及小數點記號,一堆 Windows
程式無法正確處理這類檔案。如果沒有指定此開關,RAR 會解壓縮時自動
移除檔名後面找到的的空格及小數點記號。指定此開關則會忠實地記錄原
始檔名。
僅 Windows 版本適用。
-or 如果相同檔名已經存在,自動重新命名解壓縮的檔案。重新命名的檔案
長得像 'filename(N).txt',其中 'filename.txt' 是原始檔案名稱,
而 'N' 是從 1 算起的數字,如果檔案重複則遞增。
-os 儲存 NTFS 資料串流,只在 Windows 版本有效。
此開關意味著只能在 NTFS 檔案系統下使用,並允許儲存與檔案相關聯
的交替資料串流。在壓縮時如果您在替代資料流使用軟體儲存資料,且
希望保留這些資料串流時,您應該需要指定它。
NTFS 加密檔案不會儲存資料串流。
-ow 當壓縮儲存檔案安全資訊及並於解壓縮還原它的時候,使用此開關。
Unix 的 RAR 版本在使用此開關時則儲存檔案擁有者、群組。
Windows 版本則在您擁有必要的讀取權限時,儲存擁有者、群組、檔案
權限及認證資訊。請注意只有 NTFS 檔案系統支援 Windows 下針對個
別檔案設定安全性。
-o[+|-] 設定覆寫模式。用於解壓縮及更新壓縮檔時。以下為可用模式:
-o 覆寫前先詢問
(解壓縮檔案時之預設值);
-o+ 覆寫全部檔案
(更新壓縮檔時的預設值);
-o- 不覆寫現存的檔案。
-p[密碼]設定密碼
設定密碼 <密碼> 用於壓縮時加密檔案及解壓縮時解密檔案。
密碼大小寫有別。最大的密碼長度為 127 個字元,多出來的字元會自動
節略掉。如果您在指令行漏失密碼,會出現「輸入密碼」的訊息。如果
沒有 <密碼> 參數,您也可以使用檔案重新導向或導流來指定密碼。
範例:
1) rar a -psecret texts.rar *.txt
加入檔案 *.txt 並以密碼 "secret" 加密。
2) rar -p texts.rar *.txt < psw.txt
拿 psw.txt 檔的內容當作密碼。
-p- 不詢問密碼
加密檔案解壓縮時不要詢問密碼。事實上為加密的檔案解壓縮時您可以
指定任何無效的密碼來叫起密碼提示,並強制 RAR 派送「密碼錯誤」的
訊息。此開關只設 '-' 為密碼。
-qo[-|+]
加入快速開啟資訊 [無|強制]
RAR 壓縮檔在檔案敘述資料之前緊接著儲存每個檔案的檔頭,包含檔名、
時間、大小及屬性。這麼做比將所有檔頭集中在單一連續的區間還能分
散風險,因為集中的話只要壞一部份就毀掉整個壓縮檔。不過,即便是
更值得信賴,這種檔頭散佈於等個壓縮檔各處,存取起來就相對變慢。
尤其是那種需要快速開啟檔案的時機,如 WinRAR 圖形介面影響尤甚。
為了改進壓縮檔開啟速度,同時防止整個壓縮檔的重要資料位於單一毀
損區塊,RAR 5.0 壓縮檔可以包含一種選用的快速開啟記錄。這種記錄
會將檔名及其他檔案資訊儲存在檔案最後的連續區間,等同於壓縮檔內
部各處的檔頭資料。既然區間是連續的,其內容就能很快速存取,不用
花時間讀取磁碟各處。這個區間裡,每個檔頭都被雜湊驗算保護。如果
RAR 偵測到快速開啟資訊損毀,就會回去改讀壓縮檔內部每個單獨的檔
頭,因此就能減少損失的風險。
快速開啟資訊包含完整版本的檔頭資料,可能每個檔案會有幾十或幾百
個位元組,相對增加壓縮檔大小。這增加的大小在小檔林立的壓縮檔格
外明顯,檔案資料大小能與檔頭相當。因此預設的狀況之下,如果沒有
指定 -qo,或指定 -qo 但沒有參數,RAR 只會對相對大檔儲存檔頭,
而對小檔則繼續使用自己的檔頭資料。具體的檔案大小依據 RAR 版本
而異。這樣做為速度及壓縮檔大小取得合理的平衡。如果您希望獲得最
快速開啟壓縮檔的速度,不在乎大小,您可以使用 -qo+ 來儲存所有檔
案的檔頭。如果您想要儘量最小的壓縮檔,不在乎壓縮檔開啟速度,可
以使用 -qo- 來完全排除快速開啟資訊。
如果您想測量這個開關的效能影響,請確認壓縮檔內容不是儲存在磁碟
快取中。快取的壓縮檔並沒有真正讀寫磁碟,如此一來即便沒有快速開
啟記錄也能很快速開啟檔頭。
-r 啟用子資料夾的遞迴,可使用於指令: a、u、f、m、x、e、t、k、
rr、c 及 s。
當使用於指令 a、u、f 或 m 時,不但只有目前工作的資料夾,且在
全部子資料夾的檔案將會一併處理。
當使用於指令 x、e、t、k、rr、c 或 s 時,不但只有目前工作的資
料夾,且在全部子資料夾的壓縮檔將會一併處理。
-r- 停用遞迴。
即使不用 -r 開關 RAR 也能在某些情形下自動啟用遞迴。開關 -r-
則防止使用它。
如果您在壓縮時指定目錄名稱,且此名稱不包含萬用字元,則預設的
情形下即使沒有指定 -r,RAR 會加入目錄內容。
同樣的如果磁碟根目錄沒有利用萬用字元指定檔案遮罩,RAR 會自動
啟用遞迴,而開關 -r- 會停用這樣的行為。
範例:
rar a -r- arc dirname
此指令只會加入空白的 'dirname' 目錄,忽略其中內容。以下指令:
rar a -r- arc c:\
會壓縮根目錄 c: 的內容,不會遞迴到子目錄中。
-r0 類似於開關 -r,但是與指令 a、u、f、m 合用時,只會遞迴包含萬
用字元 "*" 及 "?" 的子資料夾遮罩。
此開關只適用於檔名。目錄名稱不含檔名部分,如 'dirname',並不
受 -r0 影響,其內容也會完全加入壓縮檔,除非另外指定 -r- 開關。
範例:
rar a -r0 docs.rar *.doc readme.txt
將目前目錄中及其子目錄的的 *.doc 檔案,加上只在本目錄中的
readme.txt 加到 docs.rar 壓縮檔。在一般的 -r 開關,RAR 也會
搜尋子目錄中的 readme.txt。
-ri<p>[:<s>]
設定優先權及停頓時間。這只可用於 Windows 的 RAR 。
這個開關讓 RAR 在多工環境下時,使用來管理系統載入負荷。可用
任務優先權數值 <p> 是從 0 到 15。
當 <p> 等於 0 時,則使用預設的任務優先權。1 表示最低的任務優
先權,15 - 最高。
停頓時間 <s> 是數值從 0 到 1000 (千分之一秒)。這是 RAR 在壓
縮或解壓縮後將會歸還到系統的時段。如果您要降低更多系統負荷,
可以跟 <p> 參數一起使用非零 <s>。
範例:
執行 RAR 以預設優先權並停頓 10 ms
rar a -ri0:10 backup *.*
-rr[N] 加入資料修復記錄。此開關使用於,當建立或修改壓縮檔時,加入資料
修復記錄到壓縮檔。
請參閱 rr[N] 指令取得詳細說明
-rv[N] 建立修復分割檔。這個開關用於在建立或修改多重分割壓縮檔時,生成恢
復分割檔。
請參閱 'rv[N]' 指令獲取詳細說明。
-s 建立結實壓縮檔。結實壓縮是一種特殊的壓縮方式,將壓縮檔中部分或全
部檔案視為單一連續資料流。
結實壓縮檔在加入大量又小又類似的檔案時能明顯地增加壓縮率。不過也
有一些限制:更新結實壓縮檔的速度較慢、存取單一檔案速度較慢、較不
耐破壞。
通常結實壓縮檔內的檔案以副檔名排序。不過也可以利用 -ds 開關來停用
排序,或利用特定檔案 rarfiles.lst 來設定替代檔案順序。
範例:
建立結實壓縮檔 sources.rar 使用 512 Kb 字典檔,遞迴全部目錄,只
加入 .asm 檔案:
rar a -s -md512 sources.rar *.asm -r
-s<N> 以檔案數量建立結實群組
類似於 -s,但在壓縮 <N> 個檔案之後重設結實統計資料。通常這樣
會減低壓縮率,但也可以在結實壓縮檔損壞的範例時減少資料的流失。
-sc<字元集>[物件]
指定字元集。
「字元集」參數為必要的,可以使用以下的值:
U - Unicode UTF-16;
F - Unicode UTF-8;
A - 原生單碼編碼,也就是 Windows 的 ANSI 編碼。
O - OEM (DOS) 編碼。僅限 Windows 版本。
來源 UTF-16 檔案的字元序,如清單檔案或註解,係由字元順序遮罩偵
測。如果遺失字元順序遮罩,則假設為小端編碼。
「物件」參數為選用,可以使用以下的值:
G - 使用 -ilog 開關指定的記錄檔;
L - 清單檔案;
C - 註解檔案;
R - 送到重新指向的檔案或管道的訊息 (限 Windows)。
允許指定一個以上的物件,例如 -scolc。如果沒有「物件」參數,則
「字元集」會應用於所有的物件。
此開關可以使用 -z[檔案] 來指定檔案的字元集、"cw" 指令來指定清
單檔案及註解檔案。
範例:
1) rar a -scol data @list
使用 OEM 編碼,從 "list" 裡面讀取名稱。
2) rar c -scuc -zcomment.txt data
以 Unicode 讀取 comment.txt 檔案。
3) rar cw -scuc data comment.txt
以 Unicode 寫入 comment.txt 檔案。
4) rar lb -scur data > list.txt
以 Unicode 格式儲存 data.rar 內壓縮的檔名至 list.txt。
-se 以檔案副檔名建立結實群組
類似於 -s,但副檔案變更時重設結實統計資料。通常這樣會減低壓
縮率,但也可以在結實壓縮檔損壞的範例時減少資料的流失。
-sfx[名稱]
建立自解壓縮檔。如果建立新壓縮檔的時候,使用此開關自解壓縮檔
(使用檔案 default.sfx 模組或在開關中指定的) 將會被建立。
在 Windows 版本的 default.sfx 應該被放與 rar.exe 相同的目錄內
,在 Unix 與 BeOS - 於使用者的 home 目錄,/usr/lib 或
/usr/local/lib。
範例:
rar a -sfxwincon.sfx myinst
使用 wincon.sfx 自解檔模組建立自解壓縮檔
-si[名稱]
建立壓縮時從 stdin (標準輸入) 讀取資料。選用的 '名稱' 參數允許
指定在建立的壓縮檔內壓縮的 stdin 中,壓縮的檔名。如果沒有此參
數,則名稱設定為 'stdin'。
範例:
type Tree.Far | rar a -siTree.Far tree.rar
會壓縮 'type Tree.Far' 輸出為 'Tree.Far' 檔案。
-sl<大小>
只處理比在此開關 <大小> 參數指定值還小的檔案。參數 <大小> 必
須以位元組為單位。
-sm<大小>
只處理比在此開關 <大小> 參數指定值還大的檔案。參數 <大小> 必
須以位元組為單位。
-sv 建立獨立結實壓縮分割檔案
預設值 RAR 會再開始一個分割檔案的時候,嘗試儘快重置結實狀態。
但這個動作的必要條件是前一個重置已經儲備了許多足夠的資料 (至
少好幾 MB)。
這個開關會強制 RAR 忽略打包的資料大小,並試圖對任何大小的分割
檔案重置狀態。這會降低壓縮率,但可以增加結實壓縮在分割檔案中
遺失或損壞時能夠解壓縮部份資料的機會。
請注意有時候 RAR 即使使用這個開關也無法重置狀態。例如,當壓縮
一個大檔案成許多分割檔案時就沒有辦法。RAR 只能對許多分割檔案
中包含許多小檔案時能重置結實狀態。
如果使用於建立非分割壓縮檔則忽略。
-sv- 建立從屬結實壓縮分割檔案
在分割檔案之間停用重置結實壓縮檔狀態。
這對增加壓縮率有一點點幫助,但如果有檔案在結實檔案中遺失或損壞
了,則明顯的會降低解壓縮部分檔案的機會。
如果使用於建立非分割壓縮檔則忽略。
-s- 停用結實壓縮法
-t 壓縮後測試壓縮檔。在和移動指令聯合使用時,這個開關特別有用,
因為只有在壓縮檔成功測試後,才會刪除檔案。
-ta[m,c,a,o]<日期>
只處理指定日期後修改的檔。包含與指定日期完全相同的檔案。
日期字串格式: YYYYMMDDHHMMSS
在日期字串中,允許插入分隔符號如 '-' 或 ':' ,並且可以省略後
面的部分。例如,下列的開關是正確的:-ta2001-11-20 在內部,它
會被延伸為 -ta20011120000000,按照「2001 年 11 月 20 日 0 時
0 分 0 秒後修改的檔」處理。
使用 'm', 'c', 'a' 修改字元來指定修改、建立及上次存取時間,
例如 -tac20011120 用於建立時間。如果省略這樣的修改字元,會指
定為修改時間。
在相同開關中可以使用多個控制參數,就像 -tamc20190215,用來設
定相同日期給所有指定的時間。也可以使用多個時間篩選開關給指令。
時間篩選使用 AND 邏輯,因此檔案必須得符合所有篩選條件才能進行
處理。使用 'o' 控制參數可以改用 OR 邏輯,例如,使用
-taco20190201 -tamo20190210 來採用檔案建立時間在 2019-02-01
之後或者修改時間在 2019-02-10 之後。
-tb[m,c,a,o]<日期>
只處理指定日期前修改的檔。不含與指定日期完全相同的檔案。
開關的格式同 -ta<日期>。
-tk 維持原有的壓縮檔時間。當壓縮檔改變時,防止 RAR 修改壓縮檔時
間。
-tl 以最新的檔案設定壓縮檔時間。強制 WinRAR 以在壓縮檔中最新的檔
案時間修改壓縮檔時間。
-tn[m,c,a,o]<時間>
使用此開關時,只處理比指定時間還新的那些檔案,包含與指定日期
完全相同的檔案。
時間字串的格式為:
[<n日>d][<n時>h][<n分>m][<n秒>s]
例如,使用開關 -tn15d 可處理檔案較新近 15 天的,以及
-tn2h30m 則處理檔案較新於 2 小時 30 分的。
使用 'm', 'c', 'a' 修改字元來指定修改、建立及上次存取時間,
例如 -tna2h30m 用於存取時間。如果省略這樣的修改字元,會指
定為修改時間。
在相同開關中可以使用多個控制參數,就像 -tnmc30d,用來設定相
同日期給所有指定的時間。也可以使用多個時間篩選開關給指令。
時間篩選使用 AND 邏輯,因此檔案必須得符合所有篩選條件才能進行
處理。使用 'o' 控制參數可以改用 OR 邏輯,例如,使用
-tnco30d -tnmo20d 來採用檔案建立時間在 30 天內或者變更時間在
20 天內。
-to[m,c,a,o]<時間>
處理比指定時間還舊的檔案。不含與指定日期完全相同的檔案。
時間字串的格式與 -tn<時間> 相同。
-ts[m,c,a,p][+,-,1]
保存或恢復檔案時間 (修改、建立、存取、保留)。
使用 -tsm 儲存檔案修改時間,-tsc 用於建立時間,-tsa 則為修改時
間。可以併用多個 -ts 開關,如 -tsc -tsa。如果沒有指定 'm','c',
'a',則認定三個都要。
添加 '+' 則記錄作業系統跟檔案系統能使用的最長的精度,Windows
最長 100 奈秒,Unix 則為 1 奈秒。添加 '1' 設定 1 秒精度,'-'
不記錄檔案時間。如果沒有指定 '+','-','1',則認定為 '+',因此
-ts+ 及 -ts 都儲存三種高精度時間。
相同檔案儲存的所有時間都擁有相同的精度。如果指定不同精度,如
-tsm1 -tsc+,則選用最普通的那個。
RAR 4.x 壓縮檔永遠含有修改時間,且 RAR 4.x 壓縮檔 -hsm- 依然儲
存最低兩秒精度的修改時間,另外兩種時間可以不記錄。RAR 5.0 壓縮
檔可以允許忽視任何檔案時間,包含修改時間,所以解壓縮的檔案會有
當下的系統時間。開關 -tsm- -tsc- -tsa- 或只用 -ts- 會儲存低精度
修改時間給 RAR 4.x 格式,而對 RAR 5.0 壓縮檔則不記錄時間。
如果沒有指定 -ts 開關,RAR 儲存高精度修改時間,忽略其他兩種時間。
RAR 預設只設定修改時間,不管壓縮檔是否包含另外兩種時間。解壓縮
時必須用 -ts 或 -ts+ 設定所有三種時間,-tsc 及 -tsa 設定建立及
存取時間,-tsm- 或 -ts- 設為當下系統時間,取代壓縮檔儲存的修改
時間。
Windows 在解壓縮時可以設定所有三種時間格式。在 Unix 我們設定修
改時間及存取時間,不儲存建立時間。
壓縮時使用 -tsp 開關則會保留來源檔案中最後存取的那個檔案的原始
存取時間。這個開關企圖保留壓縮檔原始的上次存取時間,但無法控制
哪個時間戳記要存在壓縮檔中。必須要結合其他 -ts 開關才行。例如,
如果要儲存上次存取時間到壓縮檔,且保留原始檔案的上次存取時間,
就必須同時使用 -tsa -tsp。開關 -tsp 能防止打開沒有此開關也能開
啟的檔案。
當 -tsp 被 Windows 的 RAR 支援時,並不保證其他平台也適用。
您也可以在相同開關中混用許多輔助字元,例如 -tscap 來簡化
-tsc -tsa -tsp。
範例:
1) rar a -ts backup
以最高精度儲存所有檔案時間。
2) rar x -tsa backup
儲存修改和最近存取時間。開關 -tsm 不是必要的,因為本來就是 RAR
預設值。如果我們只想回復存取時間,就應該使用 -tsm- -tsa 開關。
3) rar a -tsm1 -tsc1 -tsp backup
儲存低精度的修改和建立時間。
保留原始檔案的最近存取時間。
您也可以使用 -tsm1c1p 來簡化 -tsm1 -tsc1 -tsp。
-u 更新檔案。這可與壓縮檔解壓及建立時合用。指令字串 a -u 是對等
於指令 u。您也可以使用開關 "-u" 於指令 m。如果開關 "-u" 使用
於指令 x 或 e,這時從壓縮檔解壓縮,有最近使用的檔案,只有在舊
檔案有新版本時才會取代。這不像 -f 一樣,如果壓縮檔沒有符合的
未封裝檔案,它將會被解壓縮。
-v 使用自動偵測大小或所有分割檔案清單建立分割檔案。
這個開關使用於建立或列出分割檔案。
第一個範例允許自動偵測分割檔大小,所以新的分割檔案會使用目的地
媒體剩下的所有空間。這在卸除式磁碟壓縮時很方便。您可能需要閱讀
其他關於 -v<大小> 的描述。
第二個範例是當這個開關與 'V' 或 'L' 指令共用時,它強制 RAR 從
指定於指令行的清單內容開始。沒有這個開關,RAR 只顯示單一指定分
割檔。
-v<大小>[k|b|m|M|g|G]
建立分割檔案壓縮及大小=<n>*1000 [*1024 | *1]。
根據預設值,此開關使用 <n> 作為一千個 (1000) 位元組 (非 1024
x 位元組)。您也可以輸入符號 "k" 來表示千位元組的大小,或者符
號 "b" 表示位元組,在 megabyte 表示法為 - "m",而 million 則
是 - "M",gigabyte 則是 - 'g',billion (milliard) 則是 - 'G'。
如果省略了大小,將會使用自動偵測。
您可以使用小數點代表輸入的是十進位。例如,-v1.5g 表示 1.5 gigabytes
您可以指定許多 -v 來為不同分割檔設定不同大小,例如:
rar a -v100k -v200k -v300k 壓縮檔名
設定 100 KB 大小給第一個分割檔,200 KB 給第二個分割檔,300 KB
給之後的分割檔。
如果分割檔案在相同的磁碟上被建立當成暫存的檔案 (預設為目前磁碟,
但是可能與開關 '-w' 一起改變),自動偵測大小會變成無意義。在
這情況下,分割檔案大小必須明確地定義。
如果分割檔案建立在抽取式媒體,在建立第一個分割檔案之後,使用者將會被
提示:
Create next volume: Yes/No/All
在此時間裡,您可以抽換磁片。回答 "A" 則會建立全部的分割檔案而不會暫停。
預設情況下,RAR 分割檔使用如 'volname.partNNN.rar' 這樣的名字,這裏的
NNN 是分割編號。RAR 4.x 格式使用 -vn 開關可以換到另一種,根據副檔名的
方案,這種情況下分割序列的第一個分割副檔名是 .rar,後繼的分割檔按 .r00
到 .r99 編號。RAR 5.0 壓縮檔不支援 -vn 及延伸基礎名稱。
當解壓縮或測試多片的分割檔案壓縮檔時,您只能使用第一個分割檔案的名稱。
如果下一個分割檔案不在磁碟機時,使用者會被提示:
請插入磁片 <下一個分割檔案名稱>。
這時請插入正確的分割檔案並按下任何鍵
當解壓縮的時候,找不到下一個分割檔案時,RAR 將會中止並顯示錯誤訊
息:
Cannot find <分割檔案名稱>
壓縮檔分割檔案是無法修改的。指令 d、f、u 或 s 也不能使用於多片的
分割檔案壓縮檔。指令 a 只可以在建立新的多片分割檔案壓縮時使用。
這是可能的,雖然不像在多片分割檔案中檔案的大小一樣,但可以大於未
壓縮的大小。這個事實的緣由是「儲存」(如果大小增加時不壓縮) 不
能在多片的分割檔案壓縮中啟用。
壓縮檔分割檔案可以是自解檔,此類壓縮檔建立時可使用 '-v' 及 '-sfx'
開關的任一種。
範例:
建立結實分割檔,每個 1 GB:
rar a -s -v1g volume.rar bitmaps
-vd 建立分割檔案壓縮前清除磁片內容
當使用 "-vd" 時,在開始壓縮作業之前,全部在目標磁片的檔案及
資料夾將會先清除。如果您建立分割檔案壓縮,在建立每一個分割檔案之前,
都將先執行清除作業,以讓您可以放入非空白的磁片,但您必須注意
在磁片上不包含任何的有用資訊。
-ver[n] 檔案版本控制
在更新已經存在的壓縮檔內的檔案時,強制 RAR 保留以前的檔案版本。舊版
本的檔案被重新命名為 'filename;n',這裡 'n' 是版本號碼。
預設情況下,在不帶開關 -ver 解壓縮時, RAR 只解壓縮那個不包括數字尾
碼的、最後加入的版本的檔案。但是,如果您指定一個包含版本的、確切的
檔案名稱,那麼這個檔將會解壓縮。例如,'rar x arcname' 將會只解壓縮
最新的版本,而如果檔案在壓縮檔記憶體的話,'rar x arcname file.txt;5'
將會解壓縮 'file.txt;5'。
在解壓縮時,如果您不帶任何參數使用 -ver 開關,RAR 將會解壓縮符合檔
案過濾條件的所有檔的所有版本。這種情況下,檔案版本號碼不會從解壓縮
的檔案名稱中刪除。您也可以經由將版本號碼指定為 -ver 的參數,解壓縮
一個特定的檔案版本。這將指令 RAR 只會解壓縮這個版本的檔並從檔案名稱
中刪除版本號碼。例如,'rar x -ver5 arcname' 將只解壓縮第五個版本的
檔案。
如果您在壓縮時指定 'n' 參數,會限制儲存在壓縮檔中,檔案版本能儲存的
最大值。舊的檔案版本超過這個限制會被移除掉。
使用 -ver 開關來保存時,建議避免使用 'filename;n' 之類的名稱格式來
添加,如果舊版在壓縮檔既有或即將建立的使用同名稱,會引起產生重複項
目。
-vn 使用舊式的分割命名方案
預設情況下,RAR 分割壓縮檔的名稱如 'volname.partNNN.rar',這裏 NNN
是分割編號。RAR 4.x 格式使用 -vn 開關可以切換到另一種,以副檔名為
主的命名方案,這種方案下,分割序列第一個分割的副檔名是 .rar,後繼的
分割按 .r00 到 .r99 編號。RAR 5.0 壓縮檔不支援 -vn 及延伸基礎名稱。
-vp 每次分割檔案之前暫停
預設 WinRAR 只會在壓縮到抽取式磁碟、且剩下的磁碟空間少於分割檔時,
才會在處理下個分割檔之前先提出詢問。此開關強制規定建立或解壓縮分
割檔之前都要提出詢問。例如,如果您希望建立分割檔之後立刻搬到其他
儲存媒體,此功能就很實用。
-w<p> 以 <p> 分配工作目錄。
RAR 在某些操作 (如修改壓縮檔) 中建立暫存檔。此開關可用於指定此類
暫存檔的目錄。
例如:
對 info.rar 加入新註解時,使用 d:\tmp 資料夾存放暫存檔
RAR c -wd:\tmp -zcomment.txt info.rar
-x<f> 排除指定的檔案 <f>,可以同時在名稱及檔案遮罩的檔案部份使用萬用字
元。在相同指令行,您可以指定開關 -x 數次來為同一個指令定義許多排
除的遮罩:
如果遮罩包含萬用字元,則該規則適用於當下目錄及其子目錄。沒有萬用
字元是不會同時應用在其他層的。所以壓縮時,"filename" 這個遮罩只
會運用於當前目錄的 'filename' 檔案,或解壓縮時適用於根壓縮檔目錄。
使用 "*\filename" 語法會對所有目錄遞迴排除 "filename"。
如果您知道檔案的確實路徑,可以使用 "path\filename" 語法來排除此
唯一的 "filename"。如果您解壓縮時使用 -xpath\filename 語法,則
上面的 "path" 必須是在壓縮檔內的路徑,不是解壓縮之後真正的磁碟
路徑。
預設的狀態下,只有檔案能使用含有萬用字元的遮罩。如果您想要使用
萬用字元的遮罩來排除許多目錄,請使用目錄排除遮罩專用的特殊語法。
這類的遮罩必須含有斜線分隔字元 (Windows 是 '\' 而 Unix 是 '/')。
例如,"*tmp*\" 遮罩會排除所有符合 "*tmp*" 條件的目錄,而 "*\tmp\"
則排除所有 'tmp' 目錄。既然出現萬用字元,以上兩者都會運用在當下
的目錄及其子目錄。
如果您只想排除一層目錄,請指定明確的目錄名稱,絕對或相對路徑都
可以,並且不要使用萬用字元。如此一來您也不必給遮罩加上斜線字元,
因為這只針對使用萬用字元時,要分辨是檔案排除遮罩還是目錄排除遮
罩之用。
範例:
1) rar a -r -x*.jpg -x*.avi rawfiles
壓縮所有檔案,而排除當前目錄及以下目錄的 *.jpg 及 *.avi;
2) rar a -r -x*\temp\ savec c:\*
壓縮所有磁碟 C: 的檔案,但排除 'temp' 目錄及 'temp' 目錄中的檔
案;
3) rar x -x*.txt docs
從 docs.rar 解壓縮所有檔案,但排除 *.txt
-x@<lf> 排除指定清單中的檔案。如果您使用 -n@ 但沒有列出檔案名稱,則會從
stdin 讀取檔案名稱。
範例:
rar a -x@exlist.txt arch *.exe
-y 假設全部的詢問回應皆為 "Yes"。
-z[檔案]
從檔案 <檔案> 讀取壓縮檔註解。
此開關可與任何變更壓縮檔指令共用,來從檔案讀取壓縮檔註解並加入壓
縮檔。如果要為註解文字檔指定字元集,則請用 -sc 開關。如果沒有出現
<檔案>,則會從 stdin 讀取註解。
限制
~~~~
指令限制:
指令 'd','u','f','c','cf' 不可與壓縮檔分割檔案作業。
指令 'a' 無法更新壓縮檔分割檔案,只能建立一個新的。
結束代碼
~~~~~~~~
RAR 以代碼 0 結束的範例代表作業成功,結束代碼不為 0,則表示作業期間
有錯誤發生:
代碼 敘述
0 作業成功
1 非無法挽回的錯誤出現
2 發生無法挽回的錯誤
3 雜湊驗算發生錯誤,資料已損毀
4 企圖修改先前由 'k' 指令鎖定的壓縮檔
5 寫入磁碟錯誤
6 開啟檔案錯誤
7 指令行選項錯誤
8 記憶體不足
9 建立檔案發生錯誤
10 指定的遮罩及選項找不到檔案
11 密碼錯誤
12 讀取錯誤
255 使用者停止進行
詞彙表
~~~~~~
壓縮檔 包含一個或是多個壓縮過的以及/或是加密過的特殊檔案
壓縮 一種資料編碼以減少它的大小的方式
雜湊驗算 對資料區間或檔案計算之後的值,可以用來驗證資料或檔案的
正確性
自解檔 自我解壓縮檔。即壓縮檔以一種執行檔的形式存在,從自我解
壓縮模組執行,繼而自己將壓縮檔解開來。
結實 特殊壓縮方式封裝的壓縮檔,它把在壓縮檔的全部檔案都當成
一個連續資料流來看待。結實壓縮可增進壓縮效能,特別是在
加入大量的小檔案的時候。
分割檔 壓縮檔分割的部分單位。將壓縮檔切成分割檔有助於分配到抽
取式磁碟裝置。結實壓縮分割檔則必須從第一片解壓縮起。
版權所有
(c) 1993-2020 Alexander Roshal
- 一抹淺藍編譯自 JAZZ 及一抹淺藍綜合版