tar
![]() | |
拡張子 | .tar |
---|---|
MIMEタイプ | application/x-tar |
タイプコード | "TARF" |
UTI | public.tar-archive |
マジック ナンバー | ustar\000 すなわち「ustar」、NUL、算用数字の零2個の計8バイト(POSIX tar)ustar\040\040 (GNU tar)(いずれも0から数えて257バイト目から) |
種別 | ファイルアーカイブ |
開発元 | GNUプロジェクト |
---|---|
最新版 |
1.34
/ 2021年2月13日 |
ライセンス | GNU GPL v3 以降 |
公式サイト |
www |
tar(ター、tape archives)はファイルアーカイブのファイルフォーマットの一種である。このファイルフォーマットを処理する同名のUNIXコマンドtar
も指す。UNIXでは圧縮したtar形式のファイルを"tarball"(ターボール)と呼ぶこともある。POSIX.1-1988[1]やPOSIX.1-2001[2]で規格化され、UNIX系オペレーティングシステムでは標準のフォーマットである。Windowsではあまり使われない。類似コマンドにafioがある。
機能[編集]
tarはファイルのアーカイブに用いられ、多数のファイルを一つのファイルにまとめることができる。ファイルのユーザ情報とグループ情報、パーミッション、最終更新日時、ディレクトリ構造などを同時にアーカイブすることができる。元来tarはアーカイブ、すなわち複数のファイルをまとめることのみで圧縮の機能はない。大半の場合アーカイブと同時にcompressやgzip、bzip2などの圧縮方法を用いて圧縮(いわゆる「ソリッド圧縮」)を行う。これによりファイルの拡張子はそれぞれ .tar.Z、.tar.gz、.tar.bz2 となる。特に .tar.Z、.tar.gz は古くから使われておりそれぞれ略して .taz、.tgz とされることも多い。この形式はファイルが一部でも破損した場合、破損箇所に含まれていたファイル以降は取り出すことはできない。この欠点はafioとgzを使うことにより改善できる。
コマンドオプション[編集]
- -c 新しいアーカイブを作成する
- -d アーカイブ内のファイルをカレントディレクトリのファイルと比較する
- -r アーカイブにファイルを追加する
- -t アーカイブの内容をリスト表示する
- -x アーカイブからファイルを取り出す
- -C directory directoryに移動してから操作を行う
- -f file テープの代わりに指定したファイルをアーカイブする
- -L n テープの容量をnKBとする
- -N date 指定した日付よりも新しいファイルだけをアーカイブに入れる(取り出す)
- -T file fileで指定したファイルをアーカイブに入れる(取り出す)
- -v 詳細メッセージを表示する
- -a アーカイブ作成時に、拡張子から圧縮プログラムを自動的に決定する
- -z アーカイブをgzipにフィルターする(GNU 拡張)
- -j アーカイブをbzip2にフィルターする(GNU 拡張)
- -J アーカイブをxzにフィルターする(GNU 拡張)
以下は、実際の圧縮・解凍のコマンド例である[3]。
- 圧縮
tar -zcvf name.tar.gz directory
tar -cvf /dev/nst0 directory
(テープデバイスに記録する場合)
- 解凍
tar -zxvf name.tar.gz
tar -xvf /dev/nst0
(テープデバイスから読み出す場合)
- テープ上のファイルのリストを表示
リスト表示したいアーカイブファイルの先頭にテープを移動させた後、以下を実行
tar -tvf /dev/nst0
歴史[編集]
tarコマンドはその名の通り磁気テープの操作が念頭に置かれていた。fオプション[4]を省いた場合デフォルトで磁気テープデバイスを処理する。fオプションの指定によりファイルシステム上の任意の名前のファイルを処理できる。この語の由来は「リーマスじいや」の童話『タールの赤ん坊』に由来し[5]、それに油塊(タールボール)を引っ掛けたジョーク的用語である。 その歴史の長さゆえにシステム毎の方言やファイルサイズの制限など多くの非互換部分がある為、異なるシステム間のファイル交換を目的とする場合は慎重に利用する必要がある。
関連項目[編集]
脚注[編集]
- ^ "IEEE Std 1003.1-1988, IEEE Standard for Information Technology - Portable Operating System Interface (POSIX)"
- ^ "IEEE Std 1003.1-2001, IEEE Standard for Information Technology - Portable Operating System Interface (POSIX)"
- ^ いずれも short option style での記法である。https://www.gnu.org/software/tar/manual/tar.html#SEC32 によれば、記法には、long option style, short option style, old option style がある。old option style だと tar -tvf /dev/nst0 は tar tfv /dev/nst0 になる。
- ^ ファイル (file) の頭文字である。
- ^ “Jargon File - tar”. 2010年11月27日閲覧。童話の日本語訳書はアナンシ#関連書籍を参照。