Unix系のシステムでファイルのアーカイブを作成する際によく使われるコマンドが「tar」です。tarコマンドはファイルを1つのアーカイブとしてまとめるときに使用され、多くのLinuxディストリビューションやUnixベースのOSでデフォルトのツールとして利用されています。tarコマンド自体は非常に強力で、多くのオプションを提供していますが、初めての方にとってはその使い方が少し難しいと感じるかもしれません。この記事では、初心者にもわかりやすいtarコマンドの基本的な使い方と、よく使われる便利なオプション一覧を紹介します。
tarコマンドの基本
tarコマンドは「tape archive」の略で、本来はテープ装置にデータをアーカイブするために作られました。しかし、現在では多くの場合、ディスク上のファイルをアーカイブするために使われています。tarは一連のファイルをまとめて一つのアーカイブファイル(よく.tarファイルとして保存される)として保存します。基本的な使用法は次のとおりです。
tar [オプション] アーカイブファイル名 対象ファイル
基本のオプション
最もよく使われるtarコマンドのオプションを以下に示します。
-c: アーカイブを作成
新しいアーカイブファイルを作成する際に使用します。
tar -cvf archive.tar file1 file2 directory/
このコマンドはfile1、file2、およびdirectory/をarchive.tarという名前のアーカイブにまとめます。-v
オプションを追加することで、アーカイブに含まれる各ファイルの情報が端末に出力されます(verboseモード)。
-x: アーカイブから抽出
アーカイブを展開して元のファイル状態に戻すために使用します。
tar -xvf archive.tar
このコマンドはarchive.tarを現在のディレクトリに展開します。
-t: アーカイブの内容を一覧表示
アーカイブファイルの内容を一覧表示します。リストだけを確認する場合に便利です。
tar -tvf archive.tar
-f: アーカイブファイル名を指定
これが指定しなければならない必須オプションに近いものです。アーカイブのファイル名を、-fの後に続けて指定します。
アーカイブの圧縮
tar自体は圧縮機能を持たないため、他のプログラムと組み合わせて使います。gzipやbzip2と一緒に使用されるのが一般的です。
gzipと併用
gzipで圧縮するには、zオプションを使います。
tar -czvf archive.tar.gz file1 file2 directory/
展開するには以下のようにします。
tar -xzvf archive.tar.gz
bzip2と併用
bzip2を使う場合は、jオプションを使います。
tar -cjvf archive.tar.bz2 file1 file2 directory/
展開は次のようにします。
tar -xjvf archive.tar.bz2
よく使われる便利なオプション
初心者が最初に覚えておくと便利なオプションをいくつか紹介します。
–exclude
特定のファイルやディレクトリをアーカイブから除外する際に使用します。
tar -cvf archive.tar --exclude='*.log' /path/to/directory/
この例では、ディレクトリ内の.log拡張子のファイルを除外してアーカイブすることができます。
-C: ディレクトリ指定
展開時に特定のディレクトリに移動するために使用されます。
tar -xvf archive.tar -C /path/to/somedir/
指定されたディレクトリにアーカイブを展開します。
–checkpoint
アーカイブを作成または抽出する際の進行状況を確認するためのオプションです。
tar -czvf archive.tar.gz --checkpoint=100 file1 file2 directory/
100ファイルごとにチェックポイントを表示するように設定できます。
–remove-files
アーカイブを作成した後に元のファイルを削除することができるオプションです。
tar -cvf archive.tar --remove-files file1 file2
元のファイルが不要な場合に便利です。
基本的な使い方まとめ
-
アーカイブの作成:
tar -cvf
-
tar -cvf archive.tar file1 directory/
-
-
アーカイブの展開:
tar -xvf
-
tar -xvf archive.tar
-
-
圧縮アーカイブの作成:
tar -czvf
(gzip),tar -cjvf
(bzip2)-
tar -czvf archive.tar.gz file1
-
tar -cjvf archive.tar.bz2 file1
-
-
アーカイブのリスト表示:
tar -tvf
-
tar -tvf archive.tar
-
-
特定ディレクトリに展開:
tar -xvf -C
-
tar -xvf archive.tar -C /path/to/extractdir/
-
tarコマンドを使えば、多くのファイルを1つにまとめたり、逆にそれを元に戻したりするのはとても簡単です。基本の使い方をマスターすると、その利便性を最大限に引き出すことができます。オプションを駆使して、自分の用途に合った方法でtarをぜひ使いこなしてみてください。
コメント