Linuxでファイルをまとめたり解凍したりするときに頻繁に使われるのが「tar」コマンドです。特に .tar
や .tar.gz
などのアーカイブファイルを展開(解凍)する際に使う「tar -xvf」というオプションの組み合わせは、Linux初心者にとって覚えておくべき基本操作のひとつです。本記事では、「tar -xvf」の意味から使い方、よくあるエラーや実践的な例までを、初心者にもわかりやすく解説していきます。
tar(タール)は、「tape archive」の略で、複数のファイルやディレクトリを1つのアーカイブファイルにまとめるために使われるコマンドです。本来はテープ装置にファイルをバックアップする目的で作られたものですが、現在ではアーカイブの作成や展開(解凍)に広く使われています。
tarファイルは圧縮そのものではなく、「まとめる」ことが主な役割です。圧縮する場合はgzipやbzip2などと組み合わせて .tar.gz
や .tar.bz2
のような形式になります。
tarコマンドには複数のオプションがあり、-xvf
はその中でも展開時によく使われるものです。各文字の意味は以下の通りです。
例えば、以下のように使います。
tar -xvf sample.tar
これは、sample.tar
というアーカイブファイルを展開し、中身を1つ1つ表示しながら出力するという意味になります。
以下に、実際のコマンド例とその効果を解説します。
tar -xvf archive.tar
カレントディレクトリにarchive.tar
の中身が展開されます。
tar -xvf archive.tar -C /home/user/documents/
この場合、アーカイブ内のファイルが /home/user/documents/
に展開されます。
tar -xvf archive.tar file1.txt file2.txt
このように、展開したいファイル名を指定することで部分展開も可能です。
多くのアーカイブファイルは圧縮も同時に行われており、以下のような拡張子を持つことがあります。
gzip圧縮されたtarファイルです。以下のように展開します。
tar -xvzf archive.tar.gz
ここで使われている -z
は gzip 圧縮を使っていることを意味します。
bzip2圧縮されたファイルは以下のように展開します。
tar -xvjf archive.tar.bz2
この場合、-j
は bzip2 を意味します。
このエラーは指定したファイルが見つからない場合に出ます。ファイル名やパスを間違えていないか確認しましょう。
ファイルの読み取り権限がないときに出るエラーです。sudoをつけて試すか、ファイルの権限を確認しましょう。
sudo tar -xvf archive.tar
展開先のディレクトリに書き込み権限がないときは、書き込み可能な場所を指定するか、権限を確認しましょう。
展開された内容が正しく展開されたか確認したい場合は、以下のようにしましょう。
tar -tvf archive.tar
このコマンドは展開せずにアーカイブの中身を表示する「テスト表示」です。展開する前に内容を確認するのに便利です。
また、展開後は ls
コマンドでディレクトリの中身をチェックするとよいでしょう。
ls -l
Linuxを使ううえで、「tar -xvf」は頻繁に登場する基本中の基本です。オプションの意味を理解すれば、さまざまな展開処理にも柔軟に対応できます。
ポイントをおさらいしましょう。
-xvf
は「展開・表示・ファイル指定」の意味この基本を押さえておけば、他のtar関連操作もすぐに理解できます。今後、アーカイブファイルを扱う場面で困らないよう、ぜひ「tar -xvf」を使いこなせるようになりましょう!