【Linuxコマンド】tarでアーカイブを作成・展開する方法

Linuxでは複数のファイルを書庫化するのに便利な「tar」コマンドがあります。

ここでは「tar」コマンドについて以下の内容で解説していきます。

linux_tar

この記事では「tar」コマンドについてわかりやすく解説していますので、ぜひ使い方を覚えておきましょう!

目次

tarコマンドとは

Linuxでは、複数のファイルをまとめて1つのアーカイブファイルとして作成するには「tar」コマンドを使用します。

「tar」コマンドで作成されたアーカイブは拡張子「.tar」として書庫化されて、ファイルの圧縮はされずに1つのファイルをまとめて管理することを目的としています。

圧縮するには「zip」コマンドや後述する拡張子「.tar.gz」形式で行う方法があります。

zipコマンドについては以下の記事で詳しく解説しています。

tarコマンドのオプション

以下はtarコマンドで使用する主なオプションです。

オプション説明
c新規にアーカイブを作成する
v圧縮・展開時に詳細を表示する
fアーカイブファイルを指定する
zgzipの圧縮処理を行う
tアーカイブファイルの一覧を表示する
xアーカイブを展開

tarコマンドの使い方

ここではパターン別に「tar」コマンドの使い方を見ていきましょう。

アーカイブを作成する

通常「tar」コマンドでアーカイブを作成するにはオプション「cvf」を使用します。

tarでアーカイブを作成するには、以下のように記述します。

$ tar cvf アーカイブ名 ファイル1 ファイル2…

以下の例ではファイル「test01.txt」「test02.txt」をtest.tarの名称で指定してアーカイブを作成しています。

$ tar cvf test.tar test01.txt test02.txt

実行結果:
tar_image01

このようにtest.tarのアーカイブが作成されていることがわかりますね!

アーカイブを展開

アーカイブしたファイルを展開するにはオプション「x」を使用します。

$ tar xvf アーカイブ名

以下ではアーカイブtest.tarを展開しています。

$ tar xvf test.tar

実行結果:
tar_image02

tarファイルが展開されていることがわかりますね!

圧縮したアーカイブを作成する

tarコマンドで圧縮してアーカイブ(tarファイル)を作成するにはオプション「z」を使用します。

圧縮したアーカイブを作成するには、以下のように記述します。

$ tar cvzf アーカイブ名 ファイル1 ファイル2…

圧縮時はアーカイブの拡張子は「tar.gz」を指定する必要がありますので注意しましょう。

以下はtest01.txtとtest02.txtをtest.tar.gzで圧縮アーカイブを作成しています。

$ tar cvzf test.tar.gz test01.txt test02.txt

実行結果:
tar_image03

拡張子tar.gzのファイルが作成され、サイズも圧縮されていることがわかりますね!

圧縮したアーカイブを解凍・展開する

圧縮してアーカイブしたファイルを解凍して展開するには、アーカイブ同様オプション「x」を使用します。

$ tar xvzf アーカイブ名

以下ではアーカイブtest.tar.gzを解凍・展開しています

$ tar xvzf test.tar.gz

実行結果:
tar_image04

一覧を表示

アーカイブされているファイルの一覧を取得したい場合はオプション「t」を使用します。

$ tar tf test.tar.gz

実行結果:
tar_image05
このようにアーカイブされているファイルが表示されます。

Linuxについてもっと知りたい方へ

そもそもLinuxについて、

「実はなんとなくしか理解していない…」
「Linuxを効率よく学習する方法が知りたい」

といった情報を知りたい方は、以下の記事も参考にしてみてくださいね!



まとめ

ここでは、Linuxでファイルをアーカイブする「tar」コマンドについて、

  • tarコマンドとは
  • tarコマンドの使い方
  • tarコマンドのオプションと使い方

などについて解説しました。

「tar」コマンドはファイルを圧縮して受け渡ししたり、ソースファイル一式をやり取りするときによく使用しますのでこの機会に使い方をよく理解しておきましょう。

もし「tar」コマンドの使い方を忘れてしまったら、この記事を参考にしてくださいね。

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次