3.4.2 tarのオプション

--absolute-names
-P

通常、アーカイブの作成時にtarはメンバー名の先頭の/を取り除きます。また、展開時には、先頭に/がある名前や、途中に..がある名前を特別に扱います。このオプションは、その動作を無効にします。Absolute File Namesを参照してください。

--acls

POSIX ACLのサポートを有効にします。aclsを参照してください。

--after-date

--newerを参照してください(Operating Only on New Filesを参照)。

--anchored

パターンは、名前を構成する要素の先頭から続く部分に一致しなければなりません。Controlling Pattern-Matchingを参照してください。

--atime-preserve
--atime-preserve=replace
--atime-preserve=system

ファイルを読み込む際に、アクセス時刻を保持しようとします。現在、このオプションは、スーパーユーザー権限がないかぎり、自分が所有するファイルに対してのみ有効です。

--atime-preserve=replaceは、ファイルを読む前にアクセス時刻を記憶し、読み込んだ後で元に戻します。他のプログラムが同時にそのファイルを読んでいる場合、それらのアクセス時刻が失われるため、問題になることがあります。多くのプラットフォームでは、アクセス時刻を復元する際に、tarがデータの更新時刻も復元する必要があります。そのため、他のプログラムが同時にファイルへ書き込んでいる場合も問題になることがあります。tarはこの状況を検出しようとしますが、競合状態があるため、確実には検出できません。さらに、多くのプラットフォームでは、アクセス時刻を復元すると状態変更時刻も更新されます。このため、このオプションは増分バックアップと併用できません。

--atime-preserve=systemは、他のプログラムによるタイムスタンプの更新を妨げずに、ファイルのタイムスタンプを変更しないようにするため、増分バックアップにより適しています。ただし、基盤となるオペレーティングシステムとファイルシステムの実装に、特別なO_NOATIMEオプションが必要です。また、ディレクトリを検索しても、そのアクセス時刻が更新されないことも必要です。執筆時点(2005年11月)では、これが機能するのはLinuxだけで、カーネル2.6.8以降に限られます。さらに、この機能が実際に働くかどうかを確実に知る方法は、現時点ではありません。tarが機能しないと分かる場合には、--atime-preserve=systemを使うと、エラーを報告して直ちに終了します。一方、実際には機能しないのに、tarが機能すると判断する場合もあります。

現在、オペランドを付けない--atime-preserveの既定値は--atime-preserve=replaceですが、--atime-preserve=systemのサポートが改善されるにつれて、将来変更される可能性があります。

オペレーティングシステムやファイルシステムが--atime-preserve=systemをサポートしていなくても、mountコマンドを使うことで、アクセス時刻を確実に保持できる場合があります。たとえば、ファイルシステムを読み取り専用でマウントする、読み取り専用のループバックマウントを通じてアクセスする、または一部のシステムで使えるnoatimeマウントオプションを使う方法があります。ただし、通常、マウントにはスーパーユーザー権限が必要で、管理が煩雑になることがあります。

--auto-compress
-a

--create操作の際に、アーカイブの接尾辞に基づく圧縮形式の自動認識を有効にします。このオプションの効果は--no-auto-compressで取り消せます。Creating and Reading Compressed Archivesを参照してください。

--backup=backup-type

tarは、ファイルシステムからファイルを削除する代わりに、backup-typeに応じて、単純なバックアップまたは番号付きバックアップを作成します。Backup optionsを参照してください。

--block-number
-R

このオプションを指定すると、tarは、読み取りエラーのメッセージにアーカイブファイル内のブロック番号を付けて表示します。block-numberを参照してください。

--blocking-factor=blocking
-b blocking

tarが使うブロッキング係数を設定し、1レコードをblocking×512バイトにします。The Blocking Factor of an Archiveを参照してください。

--bzip2
-j

このオプションは、bzip2を通じてアーカイブを読み書きするようtarに指示します。Creating and Reading Compressed Archivesを参照してください。

--check-device

増分アーカイブ用に変更されたファイルの一覧を作成する際、デバイス番号を調べます。これが既定の動作です。詳しくはdevice numbersを参照してください。

--checkpoint[=number]

このオプションは、アーカイブを読み進める際に、定期的なチェックポイントメッセージを表示するようtarに指示します。--verboseの出力は見たくないものの、tarが動作を続けていることを目で確認したい場合のためのものです。各チェックポイントで一連のアクションを実行するよう指示することもできます。後述の--checkpoint-actionを参照してください。詳しくはCheckpointsを参照してください。

--checkpoint-action=action

チェックポイントに到達したときにアクションを実行するようtarに指示します。ここでは概要だけを示します。完全な説明はCheckpointsを参照してください。

引数actionには、次のいずれかを指定できます。

bell

コンソールでベルを鳴らします。

dot
.

標準の一覧出力ストリームにドットを1つ表示します。

echo

チェックポイントの状態と番号を含むテキストメッセージを、標準エラー出力に表示します。これが既定の動作です。

echo=string

stringを標準エラー出力に表示します。出力の前に、文字列内のメタ文字が展開されます。

exec=command

指定したcommandを実行します。

sleep=time

time秒間待機します。

ttyout=string

現在のコンソール(/dev/tty)にstringを出力します。

totals

統計を表示します(totalsを参照)。

wait=signo

シグナルsignoを待ちます。

--checkpoint-actionは複数指定できます。指定したアクションは、コマンドラインに現れる順に実行されます。

--checkpointを付けずに--checkpoint-actionを使うと、既定の頻度である10レコードごとに1回のチェックポイントが使われます。

--check-links
-l

このオプションを指定すると、tarは、処理した各ファイルについて、格納したリンク数を調べます。その数がファイルのハードリンク総数と一致しない場合、警告メッセージを表示します5。

Hard Linksを参照してください。

--compress
--uncompress
-Z

tarは、アーカイブを読み書きする際にcompressプログラムを使います。これにより、容量を節約しながら、アーカイブを直接操作できます。Creating and Reading Compressed Archivesを参照してください。

--clamp-mtime

--mtimeを参照してください。

--confirmation

--interactiveを参照してください。Asking for Confirmation During Operationsを参照してください。

--delay-directory-restore

展開したディレクトリの更新時刻と許可属性の設定を、展開処理の最後まで遅らせます。Directory Modification Times and Permissionsを参照してください。

--dereference
-h

アーカイブへ格納するファイルを読み書きする際、tarはシンボリックリンク自体ではなく、そのリンクが指すファイルにアクセスします。Symbolic Linksを参照してください。

--directory=dir
-C dir

このオプションを指定すると、tarは、操作を行う前に現在のディレクトリをdirへ変更します。アーカイブの作成時に使う場合は、指定順序によって効果が変わります。作業ディレクトリの変更を参照してください。

--exclude=pattern

操作を行う際に、tarはpatternに一致するファイルを処理対象から外します。Excluding Some Filesを参照してください。

--exclude-backups

バックアップファイルとロックファイルを除外します。exclude-backupsを参照してください。

--exclude-from=file
-X file

--excludeと似ていますが、tarはファイルfileにあるパターンの一覧を使います。Excluding Some Filesを参照してください。

--exclude-caches

有効なキャッシュディレクトリタグファイルを含むディレクトリを格納対象から除外します。ただし、ディレクトリ自身のノードとタグファイルは格納します。

exclude-cachesを参照してください。

--exclude-caches-under

有効なキャッシュディレクトリタグファイルを含むディレクトリを格納対象から除外します。ただし、ディレクトリ自身のノードは格納します。

Excluding Some Filesを参照してください。

--exclude-caches-all

有効なキャッシュディレクトリタグファイルを含むディレクトリを格納対象から除外します。Excluding Some Filesを参照してください。

--exclude-ignore=file

ディレクトリを格納する前に、tarは、その中にfileがあるかを調べます。あれば、そのファイルから除外パターンを読み込みます。パターンは、そのディレクトリ自身だけに適用されます。Excluding Some Filesを参照してください。

--exclude-ignore-recursive=file

ディレクトリを格納する前に、tarは、その中にfileがあるかを調べます。あれば、そのファイルから除外パターンを読み込みます。パターンは、そのディレクトリとすべてのサブディレクトリに適用されます。Excluding Some Filesを参照してください。

--exclude-tag=file

fileという名前のファイルを含むディレクトリを格納対象から除外します。ただし、ディレクトリ自身のノードとfileは格納します。exclude-tagを参照してください。

--exclude-tag-under=file

fileという名前のファイルを含むディレクトリの内容を格納対象から除外します。ただし、ディレクトリ自身のノードは格納します。exclude-tag-underを参照してください。

--exclude-tag-all=file

fileという名前のファイルを含むディレクトリを格納対象から除外します。exclude-tag-allを参照してください。

--exclude-vcs

広く使われているいくつかのバージョン管理システムの内部用ディレクトリとファイルを、格納対象から除外します。

exclude-vcsを参照してください。

--exclude-vcs-ignores

バージョン管理システム固有の無視ファイルから読み込んだパターンに一致するファイルを除外します。対応するファイルは、.cvsignore、.gitignore、.bzrignore、.hgignoreです。各ファイルの意味は、対応するバージョン管理システムでの意味と同じです。たとえば、.gitignoreから読み込んだパターンは、そのディレクトリとすべてのサブディレクトリに適用されます。exclude-vcs-ignoresを参照してください。

--file=archive
-f archive

tarは、コンパイル時に決まる既定のアーカイブではなく、ファイルarchiveを操作対象のtarアーカイブとして使います。The --file Optionを参照してください。

--files-from=file
-T file

tarは、コマンドラインで指定したものに加え、fileの内容を、操作対象のアーカイブメンバーまたはファイルの一覧として使います。ファイルからの名前の読み込みを参照してください。

--force-local

--fileに指定したファイル名がリモートのテープドライブ名のように見える場合でも、ローカルファイルとして解釈するようtarに指示します。local and remote archivesを参照してください。

--format=format
-H format

出力アーカイブの形式を選択します。Formatには次のいずれかを指定できます。

‘v7’

Unix V7のtarと互換性のあるアーカイブを作成します。

‘oldgnu’

GNU tarのバージョン1.12以前と互換性のあるアーカイブを作成します。

‘gnu’

GNU tar 1.13形式でアーカイブを作成します。基本的にはoldgnuと同じで、長い数値フィールドの扱いだけが異なります。

‘ustar’

POSIX.1-1988と互換性のあるアーカイブを作成します。

‘posix’

POSIX.1-2001形式のアーカイブを作成します。

これらの形式の詳しい説明は、Controlling the Archive Formatを参照してください。

--full-time

このオプションは、ファイルの時刻を、取得できる最大の精度で表示するようtarに指示します。通常は1秒単位ですが、基盤となるファイルシステムによって異なります。--full-timeが有効になるのは、--verboseによって詳細出力(詳細度2以上)を要求した場合だけです。たとえば、アーカイブを一覧表示または展開する場合は、次のようにします。

$ tar -t -v --full-time -f archive.tar

アーカイブを作成する場合は、次のようにします。

$ tar -c -vv --full-time -f archive.tar .

アーカイブの作成時に詳細出力を得るには、--verboseを2回指定する必要があることに注意してください(The --verbose Optionを参照)。

--group=group

tarアーカイブに追加するファイルのグループIDを、元のファイルのグループではなく、groupにします。groupは、名前、数値のID、またはname:idの形で両方を指定できます。Overriding File Metadataを参照してください。

--group-mapオプションと、--owner=userオプションの説明も参照してください。

--group-map=file

fileから所有グループの変換表を読み込みます。このオプションでは、特定のグループ名やUIDだけを変換できます。詳しくはOverriding File Metadataを参照してください。--groupと併用した場合、--groupは、所有グループがfileに記載されていないファイルにだけ適用されます。

このオプションは、アーカイブからの展開には影響しません。

--gzip
--gunzip
--ungzip
-z

このオプションは、gzipを通じてアーカイブを読み書きするようtarに指示します。これにより、複数の種類の圧縮アーカイブを、圧縮を意識せずに直接操作できます。Creating and Reading Compressed Archivesを参照してください。

--hard-dereference

アーカイブの作成時に、ハードリンクをたどり、通常のハードリンクメンバーを作成する代わりに、リンクが参照するファイルを格納します。

Hard Linksを参照してください。

--help
-?

tarの操作とオプションを要約した短いメッセージを表示し、終了します。GNU tar documentationを参照してください。

--hole-detection=method

スパースファイル内のホールを検出する方法にmethodを使います。このオプションは--sparseの指定を含みます。有効な方法はseekとrawです。既定値はseekで、適用できない場合はrawに切り替えます。Archiving Sparse Filesを参照してください。

--ignore-case

メンバー名やファイル名をパターンと照合する際、大文字と小文字を区別しません。Controlling Pattern-Matchingを参照してください。

--ignore-command-error

サブプロセスの終了コードを無視します。Writing to an External Programを参照してください。

--ignore-failed-read

読み取りが失敗したという理由だけでは、失敗として終了しません。Ignore Failed Readを参照してください。

--ignore-zeros
-i

このオプションを指定すると、tarは、通常はEOFを示す、ゼロで埋められたアーカイブ内のブロックを無視します。また、アーカイブ末尾のゼロブロックがない場合や不完全な場合の警告も抑止します。Ignoring Blocks of Zerosを参照してください。

--incremental
-G

古いGNU形式の増分バックアップアーカイブを扱っていることをtarに知らせます。主に、以前の形式との互換性だけを目的としたものです。増分アーカイブの詳しい説明は、Using tar to Perform Incremental Dumpsを参照してください。

--index-file=file

詳細出力を、標準出力ではなくfileへ送ります。

--info-script=command
--new-volume-script=command
-F command

複数のテープにまたがるバックアップを行う際、tarは、各テープの終わりでcommandを実行します。そのコマンドが0以外の終了ステータスで終了した場合、tarは直ちに失敗します。この機能の詳しい説明は、info-scriptを参照してください。

--interactive
--confirmation
-w

ファイルの上書きなど、破壊的な結果を招く可能性のある操作を実行する前に、ユーザーへ確認を求めるようtarに指示します。Asking for Confirmation During Operationsを参照してください。

--keep-directory-symlink

このオプションは、展開しようとするディレクトリと同じ名前のシンボリックリンクを見つけた場合のtarの動作を変えます。既定では、tarは、まずシンボリックリンクを削除してから、ディレクトリの展開を続けます。

--keep-directory-symlinkは、この動作を無効にし、アーカイブからの展開時に、ディレクトリへのシンボリックリンクをたどるようtarに指示します。

主に、Slackwareのインストールスクリプトとの互換性を提供するためのものです。

--keep-newer-files

アーカイブからファイルを展開する際、アーカイブ内のコピーより新しい既存ファイルを置き換えません。

--keep-old-files
-k

アーカイブからファイルを展開する際、既存ファイルを上書きしません。そのようなファイルが存在する場合はエラーを返します。--skip-old-filesも参照してください。

Keep Old Filesを参照してください。

--label=name
-V name

アーカイブの作成時に、nameを名前レコードとしてアーカイブに書き込むようtarに指示します。展開や一覧表示の際には、nameで指定したパターンに一致するラベルを持つアーカイブだけを処理します。Tape Filesを参照してください。

--level=n

レベルnの増分バックアップを強制します。GNU tarバージョン1.35では、--level=0はスナップショットファイルを切り詰めることで、レベル0のダンプを強制します。nのその他の値は、実質的に無視されます。詳細と例は、--level=0を参照してください。

このオプションが有効なのは、--listed-incrementalと併用する場合だけです。詳しくはUsing tar to Perform Incremental Dumpsを参照してください。

--listed-incremental=snapshot-file
-g snapshot-file

--create操作では、snapshot-fileを使ってバックアップ対象のファイルを判断する、新しいGNU形式の増分バックアップを作成するよう指定します。その他の操作では、アーカイブが増分形式であることをtarに知らせます。Using tar to Perform Incremental Dumpsを参照してください。

--lzip

このオプションは、lzipを通じてアーカイブを読み書きするようtarに指示します。Creating and Reading Compressed Archivesを参照してください。

--lzma

このオプションは、lzmaを通じてアーカイブを読み書きするようtarに指示します。Creating and Reading Compressed Archivesを参照してください。

--lzop

このオプションは、lzopを通じてアーカイブを読み書きするようtarに指示します。Creating and Reading Compressed Archivesを参照してください。

--mode=permissions

アーカイブにファイルを追加する際、tarは、元のファイルの許可属性ではなく、permissionsをメンバーの許可属性として使います。permissionsは、chmodと同様に、8進数または記号形式で指定できます。Overriding File Metadataを参照してください。

--mtime=date

アーカイブを作成してファイルを追加する際、tarは、メンバーの実際の更新時刻ではなく、dateを更新時刻として使います。dateには、文字列による日時の表現(Date input formatsを参照)、または/や.で始まる既存ファイル名を指定できます。後者の場合、そのファイルの更新時刻を使います。Overriding File Metadataを参照してください。

--clamp-mtimeも指定した場合、更新時刻がdateより前のファイルは、実際の更新時刻を保持します。dateを使うのは、更新時刻がdateより後のファイルだけです。

--multi-volume
-M

複数巻に分かれたtarアーカイブを作成する、またはその他の操作で扱うことをtarに知らせます。Using Multiple Tapesを参照してください。

--new-volume-script

--info-scriptを参照してください。

--newer=date
--after-date=date
-N

アーカイブの作成時に、tarはdate以降に変更されたファイルだけを追加します。dateが/または.で始まる場合、ファイル名と解釈し、そのファイルのデータ更新時刻を日時として使います。Operating Only on New Filesを参照してください。

--newer-mtime=date

--newerと似ていますが、内容が変更されたファイルだけを追加します。これに対し、--newerだけの場合は、状態情報のいずれかが変更されたファイルもバックアップします。Operating Only on New Filesを参照してください。

--no-acls

POSIX ACLのサポートを無効にします。aclsを参照してください。

--no-anchored

除外パターンは、名前を構成する要素の任意の部分列に一致できます。Controlling Pattern-Matchingを参照してください。

--no-auto-compress

アーカイブの接尾辞に基づく圧縮形式の自動認識を無効にします。--auto-compressおよびCreating and Reading Compressed Archivesを参照してください。

--no-check-device

増分アーカイブ用に変更されたファイルの一覧を作成する際、デバイス番号を調べません。詳しくはdevice numbersを参照してください。

--no-delay-directory-restore

展開したディレクトリの更新時刻と許可属性は、そのディレクトリ内のすべてのファイルを展開し終えた時点で設定します。これが既定の動作です。Directory Modification Times and Permissionsを参照してください。

--no-ignore-case

大文字と小文字を区別して照合します。Controlling Pattern-Matchingを参照してください。

--no-ignore-command-error

0以外の終了コードで終了したサブプロセスについて、警告を表示します。Writing to an External Programを参照してください。

--no-null

以前に--nullを指定していた場合、このオプションはその効果を取り消します。その後に現れる--files-fromでは、各ファイル名が改行で終わる一覧を使います。

--no-overwrite-dir

アーカイブからファイルを展開する際、既存ディレクトリのメタデータを保持します。Overwrite Old Filesを参照してください。

--no-quote-chars=string

直前の--quote-charsで設定した引用対象文字の一覧から、string内の文字を取り除きます(Quoting Member Namesを参照)。

--no-recursion

このオプションを指定すると、tarはディレクトリへ再帰的に入りません。ディレクトリへの再帰を参照してください。

--no-same-owner
-o

アーカイブの展開時に、アーカイブ内で指定されている所有者を保持しようとしません。一般ユーザーには、これが既定の動作です。

--no-same-permissions

アーカイブの展開時に、アーカイブ内で指定されている許可属性からユーザーのumaskを差し引いて、ファイルへ適用します。一般ユーザーには、これが既定の動作です。

--no-seek

アーカイブ媒体が、任意の位置へのシークに対応していないことを指定します。通常、tarは、アーカイブがシーク可能かどうかを自動で判断します。このオプションは、その仕組みを無効にするために使います。

--no-selinux

SELinuxコンテキストのサポートを無効にします。SELinuxを参照してください。

--no-unquote

入力されたすべてのファイル名やメンバー名を、そのままの文字列として扱い、エスケープシーケンスを解釈しません。入力ファイル名の引用を参照してください。

--no-verbatim-files-from

ファイル一覧から読み込んだ各行を、コマンドラインで指定されたかのように扱うようGNU tarに指示します。つまり、先頭と末尾の空白文字を取り除き、結果がハイフンで始まる場合は、GNU tarのコマンドラインオプションとして扱います。

これが既定の動作です。このオプションは、--verbatim-files-fromの後で既定の動作に戻すために用意されています。

--no-nullは、このオプションの指定を含みます。

no-verbatim-files-fromを参照してください。

--no-wildcards

ワイルドカードを使いません。Controlling Pattern-Matchingを参照してください。

--no-wildcards-match-slash

ワイルドカードは/に一致しません。Controlling Pattern-Matchingを参照してください。

--no-xattrs

拡張属性のサポートを無効にします。xattrsを参照してください。

--null

--files-fromを使う場合に、ファイル名がNULで終わるものとして読み込み、名前をそのままの文字列として処理するようtarに指示します。

これにより、改行を含むファイル名や、ハイフンで始まるファイル名を正しく扱えます。

NULで終端するファイル名を参照してください。

verbatim-files-fromも参照してください。

--numeric-owner

アーカイブの作成時に、名前ではなく、数値のユーザーIDとグループIDを使うようtarに指示します。Handling File Attributesを参照してください。

-o

このオプションの機能は、tarが実行している操作によって異なります。ファイルの展開時には、-oは--no-same-ownerの別名で、展開するファイルの所有者を復元しないようにします。

アーカイブの作成時には、--old-archiveの別名です。この動作はGNU tarの以前のバージョンとの互換性のためのもので、将来のリリースでは削除される予定です。

詳しくはChangesを参照してください。

--occurrence[=number]

このオプションは、コマンドラインまたは-Tでファイル一覧を指定した場合に、--delete、--diff、--extract、--listのいずれかのサブコマンドと併用できます。

指定した各ファイルについて、number番目に現れるものだけを処理するようtarに指示します。Numberの既定値は1なので、次のコマンドは、

tar -x -f archive.tar --occurrence filename

archive.tarからメンバーfilenameの最初に現れるものを展開し、アーカイブの末尾まで走査せずに終了します。

--old-archive

--format=v7の別名です。

--one-file-system

アーカイブの作成時に使います。現在のディレクトリとは異なるファイルシステムにあるディレクトリへ、tarが再帰的に入るのを防ぎます。

--one-top-level[=dir]

展開先ディレクトリ、または-Cで指定したディレクトリの下に新しいディレクトリを作成し、tarbomb対策に使うようtarに指示します。引数dirを省略すると、新しいディレクトリの名前はアーカイブのベース名になります。これは、認識されたアーカイブの接尾辞をファイル名から除いたものです。--transformと--strip-componentsによる変換後に、そのディレクトリ名で始まらないメンバー名には、ディレクトリ名を先頭に付けます。認識される接尾辞は.tarと、--auto-compressで認識される圧縮形式の接尾辞です。

--overwrite

アーカイブからファイルを展開する際、既存のファイルとディレクトリのメタデータを上書きします。Overwrite Old Filesを参照してください。

--overwrite-dir

アーカイブからファイルを展開する際、既存ディレクトリのメタデータを上書きします。Overwrite Old Filesを参照してください。

--owner=user

アーカイブの作成時に、元のファイルのユーザーではなく、userをメンバーの所有者として使うようtarに指示します。userは、名前、数値のID、またはname:idの形で両方を指定できます。Overriding File Metadataを参照してください。

このオプションは、アーカイブからの展開には影響しません。後述の--owner-mapも参照してください。

--owner-map=file

fileから所有者の変換表を読み込みます。このオプションでは、特定の所有者名やUIDだけを変換できます。詳しくはOverriding File Metadataを参照してください。--ownerと併用した場合、--ownerは、所有者がfileに記載されていないファイルにだけ適用されます。

このオプションは、アーカイブからの展開には影響しません。

--pax-option=keyword-list

このオプションは、POSIX.1-2001形式のアーカイブを作成できるようにし(GNU tar and POSIX tarを参照)、拡張ヘッダーのキーワードの扱いを変更します。Keyword-listは、キーワードオプションをカンマで区切った一覧です。詳しくはControlling Extended Header Keywordsを参照してください。

--portability
--old-archive

--format=v7の別名です。

--posix

--format=posixと同じです。

--preserve-order

--same-orderを参照してください(Same Orderを参照)。

--preserve-permissions
--same-permissions
-p

アーカイブの展開時、通常のtarは、アーカイブ内で指定されている許可属性からユーザーのumaskを差し引き、その値を展開先ファイルの作成に使います。このオプションは、アーカイブ内の許可属性をそのまま使うよう指示します。Setting Access Permissionsを参照してください。

--quote-chars=string

選択した引用形式では引用しない文字であっても、string内の文字は常に引用します(Quoting Member Namesを参照)。

--quoting-style=style

メンバー名とファイル名の表示に使う引用形式を設定します(Quoting Member Namesを参照)。styleに指定できる値は、literal、shell、shell-always、c、escape、locale、clocaleです。パッケージの設定時に変更していなければ、既定の引用形式はescapeです。

--read-full-records
-B

パイプの実装に不具合があるシステムでパイプから読み取るために、入力を再ブロック化するようtarに指定します。Options to Help Read Archivesを参照してください。

--record-size=size[suf]

アーカイブにアクセスする際、1レコードをsizeバイトにするようtarに指示します。引数にはサイズの接尾辞を付けられます。たとえば、--record-size=10Kは10キロバイトを指定します。有効な接尾辞の一覧はTable 9.1を、このオプションの詳しい説明はThe Blocking Factor of an Archiveを参照してください。

--recursion

このオプションを指定すると、tarはディレクトリへ再帰的に入ります。これが既定の動作です。ディレクトリへの再帰を参照してください。

--recursive-unlink

アーカイブから同じ名前のディレクトリを展開する前に、既存のディレクトリ階層を削除します。Recursive Unlinkを参照してください。

--remove-files

アーカイブへ追加した後、元のファイルをファイルシステムから削除するようtarに指示します。Removing Filesを参照してください。

--restrict

有害な結果を招く可能性のある、一部のtarオプションの使用を無効にします。現在は、複数巻用メニューからのシェル起動を無効にします(Using Multiple Tapesを参照)。

--rmt-command=cmd

既定の/usr/libexec/rmtではなく、cmdを使うようtarに知らせます(Remote Tape Serverを参照)。

--rsh-command=cmd

リモートデバイスとの通信にcmdを使うようtarに知らせます。Device Selection and Switchingを参照してください。

--same-order
--preserve-order
-s

このオプションは、メモリの少ないマシンでtarを実行する際の最適化です。ファイル引数の一覧が、アーカイブ内のファイル順に合わせて、すでに並べ替えられていることをtarに知らせます。Same Orderを参照してください。

--same-owner

このオプションを指定すると、アーカイブの展開時に、tarはアーカイブ内で指定されている所有者を保持しようとします。スーパーユーザーには、これが既定の動作です。このオプションが効果を持つのは、一般ユーザーの場合だけです。Handling File Attributesを参照してください。

--same-permissions

--preserve-permissionsを参照してください(Setting Access Permissionsを参照)。

--seek
-n

アーカイブ媒体が、任意の位置へのシークに対応していると仮定します。通常、tarは、アーカイブがシーク可能かどうかを自動で判断します。このオプションは、その認識に失敗する場合のためのものです。有効になるのは、アーカイブを読み取り用に開いた場合だけです。たとえば、--listや--extractを使う場合が該当します。

--selinux

SELinuxコンテキストのサポートを有効にします。selinuxを参照してください。

--show-defaults

tarが使う既定のオプションを表示し、正常終了します。このオプションは、シェルスクリプトで使うためのものです。次は、このオプションで表示される出力の例です。

$ tar --show-defaults
--format=gnu -f- -b20 --quoting-style=escape
--rmt-command=/usr/libexec/rmt --rsh-command=/usr/bin/rsh

このオプションが出力するのは1行だけであることに注意してください。上の出力例は、ページ幅に収めるために分割してあります。Obtaining GNU tar default valuesを参照してください。

--show-omitted-dirs

アーカイブを処理する際、処理対象から外すディレクトリを表示するようtarに指示します。show-omitted-dirsを参照してください。

--show-snapshot-field-ranges

このバージョンのtarで、スナップショットファイルの各フィールドに使える値の範囲を表示し、正常終了します。Format of the Incremental Snapshot Filesを参照してください。

--show-transformed-names
--show-stored-names

各種の変換を適用した後のファイル名またはメンバー名を表示します(Modifying File and Member Namesを参照)。特に、アーカイブの作成操作のいずれかと併用した場合は、実際のファイル名ではなく、アーカイブ内に格納するメンバー名を一覧表示するようtarに指示します。listing member and file namesを参照してください。

--skip-old-files

アーカイブからファイルを展開する際、既存ファイルを上書きしません。Keep Old Filesを参照してください。

--keep-old-filesとは異なり、そのようなファイルをエラーとして扱わず、単に、何も表示せずに上書きを避けます。

既存ファイルについての警告を表示するには、このオプションと--warning=existing-fileを併用できます(Controlling Warning Messagesを参照)。

--sort=order

ディレクトリを読み込む際の並べ替え順を指定します。Orderには、次のいずれかを指定できます。

‘none’

ディレクトリの並べ替えを行いません。これが既定の動作です。

‘name’

ディレクトリエントリを名前順に並べ替えます。オペレーティングシステムが返すディレクトリエントリの順序は、多少なりとも不規則な場合があります。並べ替えることで、アーカイブの作成結果を再現可能にします。

‘inode’

ディレクトリエントリをinode番号順に並べ替えます。一部のファイルシステムでは、inode番号順に並べ替えると、アーカイブの作成時にディスクのシーク回数を減らせることがあります。

--sparse
-S

アーカイブにファイルを追加する際、スパースファイルを効率よく扱うGNU拡張を使います。Archiving Sparse Filesを参照してください。

--sparse-version=version

スパースファイルのアーカイブに使う形式のバージョンを指定します。--sparseの指定を含みます。Archiving Sparse Filesを参照してください。対応するスパース形式の説明は、Storing Sparse Filesを参照してください。

--starting-file=name
-K name

このオプションは、展開だけに影響します。tarは、nameに一致するファイルを見つけるまで、アーカイブ内のファイルの展開を飛ばします。Coping with Scarce Resourcesを参照してください。

--strip-components=number

展開前に、ファイル名の先頭からnumber個の構成要素を取り除きます。たとえば、アーカイブarchive.tarに/some/file/nameが格納されている場合、次のコマンドを実行すると、

tar --extract --file archive.tar --strip-components=2

このファイルをnameというファイルに展開します。

Modifying File and Member Namesを参照してください。

--suffix=suffix

ファイルのバックアップにtarが使う接尾辞を、既定の~から変更します。Backup optionsを参照してください。

--tape-length=num[suf]
-L num[suf]

tarが書き込むテープの長さを、num×1024バイトと指定します。任意の引数sufを付けた場合は、1024の代わりに使う乗数を指定します。たとえば、-L2Mは2メガバイトを意味します。使える接尾辞の一覧はTable 9.1を、このオプションの詳しい説明はUsing Multiple Tapesを参照してください。

--test-label

ボリュームラベルを読み取ります。引数を指定した場合は、ボリュームラベルに一致するかを調べます。--test-label optionを参照してください。

--to-command=command

展開時に、tarは、展開したファイルをcommandの標準入力へパイプで渡します。Writing to an External Programを参照してください。

--to-stdout
-O

展開時に、tarは、ファイルシステムではなく標準出力へファイルを展開します。Writing to Standard Outputを参照してください。

--totals[=signo]

アーカイブの処理で転送したバイトの総数を表示します。引数を指定した場合は、シグナルsignoがtarへ送られたときに、要求に応じてこの情報を表示します。totalsを参照してください。

--touch
-m

展開したファイルのデータ更新時刻を、アーカイブ内に格納されている時刻ではなく、展開した時刻に設定します。Setting Data Modification Timesを参照してください。

--transform=sed-expr
--xform=sed-expr

sedの置換式sed-exprを使い、ファイル名またはメンバー名を変換します。たとえば、次のコマンドは、

$ tar cf archive.tar --transform 's,^\./,usr/,' .

現在の作業ディレクトリ内のファイルをarchiveへ追加し、先頭の./をusr/に置き換えます。詳しくはModifying File and Member Namesを参照してください。

詳細な一覧出力で変換後のメンバー名を表示するには、--show-transformed-namesを使います(show-transformed-namesを参照)。

--uncompress

--compressを参照してください(Creating and Reading Compressed Archivesを参照)。

--ungzip

--gzipを参照してください(Creating and Reading Compressed Archivesを参照)。

--unlink-first
-U

アーカイブから展開する前に、対応するファイルをファイルシステムから削除するようtarに指示します。Unlink Firstを参照してください。

--unquote

入力ファイル名やメンバー名の引用解除を有効にします。これが既定の動作です。入力ファイル名の引用を参照してください。

--use-compress-program=prog
-I=prog

何らかの圧縮プログラムと想定するprogを通じてアーカイブにアクセスするようtarに指示します。Creating and Reading Compressed Archivesを参照してください。

--utc

ファイルの更新日時をUTCで表示します。このオプションは--verboseの指定を含みます。

--verbatim-files-from

ファイル一覧から読み込んだ各行を、ハイフンで始まる場合でもファイル名として扱うよう、GNU tarに指示します。

ファイル一覧は、--files-from(-T)で指定します。既定では、読み込んだ各行の先頭と末尾から空白文字を取り除き、結果がハイフンで始まる場合は、GNU tarのコマンドラインオプションとして扱います。

この特別な扱いを無効にするには、--verbatim-files-fromを使います。これにより、fileコマンドが作成したファイル一覧をtarで使いやすくなります。

このオプションは、コマンドラインで後に現れるすべての--files-fromに影響します。その効果は、--no-verbatim-files-fromで取り消せます。

--nullは、このオプションの指定を含みます。

verbatim-files-fromを参照してください。

--verbose
-v

実行中の操作をより詳しく説明するようtarに指定します。一部の操作では、このオプションを複数回指定することで、表示する情報量を増やせます。Checking tar progressを参照してください。

--verify
-W

アーカイブの作成時に、正しく書き込まれたことを検証します。Verifying Data as It is Storedを参照してください。

--version

プログラムの名前、バージョン、出自、法的な状態に関する情報をすべて標準出力へ表示し、正常終了します。GNU tar documentationを参照してください。

--volno-file=file

--multi-volumeと併用します。tarは、複数巻アーカイブのどの巻を扱っているかを、fileに記録します。volno-fileを参照してください。

--warning=keyword

keywordで指定する警告メッセージを有効または無効にします。keywordの先頭にno-を付けると、そのメッセージは抑止されます。Controlling Warning Messagesを参照してください。

--wildcards

メンバー名をパターンと照合する際、ワイルドカードを使います。Controlling Pattern-Matchingを参照してください。

--wildcards-match-slash

ワイルドカードは/に一致します。Controlling Pattern-Matchingを参照してください。

--xattrs

拡張属性のサポートを有効にします。xattrsを参照してください。

--xattrs-exclude=pattern

xattrキーの除外パターンを指定します。xattrs-excludeを参照してください。

--xattrs-include=pattern.

xattrキーの包含パターンを指定します。patternはグロブパターンです。たとえば、--xattrs-include='user.*'は、user名前空間の属性だけを含めます。xattrs-includeを参照してください。

--xz
-J

アーカイブの圧縮または圧縮解除にxzを使います。Creating and Reading Compressed Archivesを参照してください。

--zstd

アーカイブの圧縮または圧縮解除にzstdを使います。Creating and Reading Compressed Archivesを参照してください。


(5)

GNU tarの以前のバージョンでは、-lは--one-file-systemの別名でした。UNIX98に準拠する現在の意味は、バージョン1.15.91で導入されました。詳しくはChangesを参照してください。