1. 程式人生 > >tar 命令引數 詳解

tar 命令引數 詳解

 主操作模式:


 -A, --catenate, --concatenate   追加 tar 檔案至歸檔
 -c, --create               建立一個新歸檔
 -d, --diff, --compare      找出歸檔和檔案系統的差異
 --delete               從歸檔(非磁帶!)中刪除
 -r, --append               追加檔案至歸檔結尾
 -t, --list                 列出歸檔內容
 --test-label           測試歸檔卷標並退出
 -u, --update               僅追加比歸檔中副本更新的檔案
 -x, --extract, --get       從歸檔中解出檔案


 操作修飾符:
 --check-device         當建立增量歸檔時檢查裝置號(預設)
 -g, --listed-incremental=檔案處理新式的 GNU 格式的增量備份
 -G, --incremental          處理老式的 GNU 格式的增量備份
 --ignore-failed-read當遇上不可讀檔案時不要以非零值退出
 -n, --seek                 歸檔可檢索
 --no-check-device      當建立增量歸檔時不要檢查裝置號
 --occurrence[=NUMBER]  僅處理歸檔中每個檔案的第 NUMBER個事件;僅當與以下子命令 --delete,
 --diff, --extract 或是 --list中的一個聯合使用時,此選項才有效。而且不管檔案列表是以命令列形式給出或是通過
 -T 選項指定的;NUMBER 值預設為 1
 --sparse-version=MAJOR[.MINOR]設定所用的離散格式版本(隱含--sparse)
 -S, --sparse               高效處理離散檔案


 重寫控制:


 -k, --keep-old-files       解壓時不要替換存在的檔案
 --keep-newer-files不要替換比歸檔中副本更新的已存在的檔案
 --no-overwrite-dir     保留已存在目錄的元資料
 --overwrite            解壓時重寫存在的檔案
 --overwrite-dir解壓時重寫已存在目錄的元資料(預設)
 --recursive-unlink     解壓目錄之前先清除目錄層次
 --remove-files         在新增檔案至歸檔後刪除它們
 -U, --unlink-first         在解壓要重寫的檔案之前先刪除它們
 -W, --verify               在寫入以後嘗試校驗歸檔


 選擇輸出流:


 --ignore-command-error 忽略子程序的退出程式碼
 --no-ignore-command-error將子程序的非零退出程式碼認為發生錯誤
 -O, --to-stdout            解壓檔案至標準輸出
 --to-command=COMMAND將解壓的檔案通過管道傳送至另一個程式
 操作檔案屬性:


 --atime-preserve[=METHOD]在輸出的檔案上保留訪問時間,要麼通過在讀取(預設
 METHOD=‘replace’)後還原時間,要不就不要在第一次(METHOD=‘system’)設定時間
 --delay-directory-restore 直到解壓結束才設定修改時間和所解目錄的許可權
 --group=名稱         強制將 NAME作為所新增的檔案的組所有者
 --mode=CHANGES         強制將所新增的檔案(符號)更改為許可權CHANGES
 --mtime=DATE-OR-FILE   從 DATE-OR-FILE 中為新增的檔案設定mtime
 -m, --touch                不要解壓檔案的修改時間
 --no-delay-directory-restore取消 --delay-directory-restore 選項的效果
 --no-same-owner        將檔案解壓為您所有
 --no-same-permissions從歸檔中解壓許可權時使用使用者的掩碼位(預設為普通使用者服務)
 --numeric-owner        總是以數字代表使用者/組的名稱
 --owner=名稱         強制將 NAME作為所新增的檔案的所有者
 -p, --preserve-permissions, --same-permissions解壓檔案許可權資訊(預設只為超級使用者服務)
 --preserve             與 -p 和 -s 一樣
 --same-owner           嘗試解壓時保持所有者關係一致
 -s, --preserve-order, --same-order為解壓至匹配歸檔排序名稱


 裝置選擇和切換:


 -f, --file=ARCHIVE         使用歸檔檔案或 ARCHIVE 裝置
 --force-local即使歸檔檔案存在副本還是把它認為是本地歸檔
 -F, --info-script=名稱, --new-volume-script=名稱在每卷磁帶最後執行指令碼(隱含 -M)
 -L, --tape-length=NUMBER   寫入 NUMBER × 1024 位元組後更換磁帶
 -M, --multi-volume         建立/列出/解壓多卷歸檔檔案
 --rmt-command=COMMAND  使用指定的 rmt COMMAND 代替 rmt
 --rsh-command=COMMAND  使用遠端 COMMAND 代替 rsh
 --volno-file=檔案    使用/更新 FILE 中的卷數


 裝置分塊:


 -b, --blocking-factor=BLOCKS   每個記錄 BLOCKS x 512 位元組
 -B, --read-full-records    讀取時重新分塊(只對 4.2BSD 管道有效)
 -i, --ignore-zeros         忽略歸檔中的零位元組塊(即檔案結尾)
 --record-size=NUMBER   每個記錄的位元組數 NUMBER,乘以 512


 選擇歸檔格式:


 -H, --format=FORMAT        建立指定格式的歸檔


 FORMAT 是以下格式中的一種:


 gnu                      GNU tar 1.13.x 格式
 oldgnu                   GNU 格式 as per tar <= 1.12
 pax                      POSIX 1003.1-2001 (pax) 格式
 posix                    等同於 pax
 ustar                    POSIX 1003.1-1988 (ustar) 格式
 v7                       old V7 tar 格式


 --old-archive, --portability等同於 --format=v7
 --pax-option=關鍵字[[:]=值][,關鍵字[[:]=值]]...控制 pax 關鍵字
 --posix                等同於 --format=posix
 -V, --label=TEXT           建立帶有卷名 TEXT的歸檔;在列出/解壓時,使用 TEXT作為卷名的模式串


 壓縮選項:


 -a, --auto-compress        使用歸檔字尾來決定壓縮程式
 -I, --use-compress-program=PROG通過 PROG 過濾(必須是能接受 -d選項的程式)
 -j, --bzip2                通過 bzip2 過濾歸檔
 --lzma                 通過 lzma 過濾歸檔
 --no-auto-compress     do not use archive suffix to determine thecompression program
 -z, --gzip, --gunzip, --ungzip   通過 gzip 過濾歸檔
 -Z, --compress, --uncompress   通過 compress 過濾歸檔


 -J, --xz                   filter the archive through xz
 --lzop                 通過 lzop 過濾歸檔


 本地檔案選擇:


 --add-file=檔案      新增指定的 FILE 至歸檔(如果名字以 -開始會很有用的)
 --backup[=CONTROL]     在刪除前備份,選擇 CONTROL 版本
 -C, --directory=DIR        改變至目錄 DIR
 --exclude=PATTERN      排除以 PATTERN 指定的檔案
 --exclude-caches       除標識檔案本身外,排除包含CACHEDIR.TAG 的目錄中的內容
 --exclude-caches-all   排除包含 CACHEDIR.TAG 的目錄
 --exclude-caches-under 排除包含 CACHEDIR.TAG的目錄中所有內容
 --exclude-tag=檔案   除 FILE 自身外,排除包含 FILE的目錄中的內容
 --exclude-tag-all=檔案   排除包含 FILE 的目錄
 --exclude-tag-under=檔案   排除包含 FILE的目錄中的所有內容
 --exclude-vcs          排除版本控制系統目錄
 -h, --dereference跟蹤符號連結;將它們所指向的檔案歸檔並輸出
 --hard-dereference 跟蹤硬連結;將它們所指向的檔案歸檔並輸出
 -K, --starting-file=MEMBER-NAME從歸檔中的 MEMBER-NAME 成員處開始
 --newer-mtime=DATE     當只有資料改變時比較資料和時間
 --no-null              禁用上一次的效果 --null 選項
 --no-recursion         避免目錄中的自動降級
 --no-unquote           不以 -T 讀取的檔名作為引用結束
 --null                 -T 讀取以空終止的名字,-C 禁用
 -N, --newer=DATE-OR-FILE, --after-date=DATE-OR-FILE只儲存比 DATE-OR-FILE 更新的檔案
 --one-file-system      建立歸檔時儲存在本地檔案系統中
 -P, --absolute-names       不要從檔名中清除引導符‘/’
 --recursion            目錄遞迴(預設)
 --suffix=STRING        在刪除前備份,除非被環境變數SIMPLE_BACKUP_SUFFIX覆蓋,否則覆蓋常用字尾(‘’)
 -T, --files-from=檔案    從 FILE中獲取檔名來解壓或建立檔案
 --unquote              以 -T讀取的檔名作為引用結束(預設)
 -X, --exclude-from=檔案  排除 FILE 中列出的模式串


 檔名變換:


 --strip-components=NUMBER   解壓時從檔名中清除 NUMBER個引導部分
 --transform=EXPRESSION, --xform=EXPRESSION使用 sed 代替 EXPRESSION 來進行檔名變換


 檔名匹配選項(同時影響排除和包括模式串):


 --anchored             模式串匹配檔名頭部
 --ignore-case          忽略大小寫
 --no-anchored          模式串匹配任意‘/’後字元(預設對
 exclusion 有效)
 --no-ignore-case       匹配大小寫(預設)
 --no-wildcards         逐字匹配字串
 --no-wildcards-match-slash   萬用字元不匹配‘/’
 --wildcards            使用萬用字元(預設對 exclusion )
 --wildcards-match-slash萬用字元匹配‘/’(預設對排除操作有效)


 提示性輸出:


 --checkpoint[=NUMBER]  每隔 NUMBER個記錄顯示進度資訊(預設為 10 個)
 --checkpoint-action=ACTION   在每個檢查點上執行 ACTION
 --index-file=檔案    將詳細輸出傳送至 FILE
 -l, --check-links只要不是所有連結都被輸出就列印資訊
 --no-quote-chars=STRING   禁用來自 STRING 的字元引用
 --quote-chars=STRING   來自 STRING 的額外的引用字元
 --quoting-style=STYLE  設定名稱引用風格;有效的 STYLE值請參閱以下說明
 -R, --block-number         每個資訊都顯示歸檔內的塊數
 --show-defaults        顯示 tar 預設選項
 --show-omitted-dir 列表或解壓時,列出每個不匹配查詢標準的目錄
 --show-transformed-names, --show-stored-names顯示變換後的檔名或歸檔名
 --totals[=SIGNAL]      處理歸檔後打印出總位元組數;當此SIGNAL 被觸發時帶引數 -列印總位元組數;允許的訊號為:
 SIGHUP,SIGQUIT,SIGINT,SIGUSR1 和
 SIGUSR2;同時也接受不帶 SIG
 字首的訊號名稱
 --utc                  以 UTC 格式列印檔案修改資訊
 -v, --verbose              詳細地列出處理的檔案
 -w, --interactive, --confirmation每次操作都要求確認


 相容性選項:


 -o                         建立歸檔時,相當於
 --old-archive;展開歸檔時,相當於
 --no-same-owner


 其它選項:


 -?, --help                 顯示此幫助列表
 --restrict             禁用某些潛在的有危險的選項
 --usage                顯示簡短的用法說明
 --version              列印程式版本


長選項和相應短選項具有相同的強制引數或可選引數。


除非以 --suffix 或 SIMPLE_BACKUP_SUFFIX
設定備份字尾,否則備份字尾就是“~”。
可以用 --backup 或 VERSION_CONTROL 設定版本控制,可能的值為:


 none, off       從不做備份
 t, numbered     進行編號備份
 nil, existing
如果編號備份存在則進行編號備份,否則進行簡單備份
 never, simple   總是使用簡單備份