GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでのtarコマンド(アーカイブの作成と抽出)

tar コマンドは、ファイルのグループをアーカイブに変換することによってtarファイルを作成します。また、tarアーカイブを抽出したり、アーカイブに含まれているファイルのリストを表示したり、既存のアーカイブにファイルを追加したり、その他のさまざまな操作を行うこともできます。

Tarは元々、ファイルを磁気テープに保存するためのアーカイブを作成するために設計されたため、「 T」という名前が付けられています。 類人猿AR チャイブ」。

この記事では、 tarの使用方法を説明します 最も一般的なtarオプションの実用的な例と詳細な説明を通じて、tarアーカイブを抽出、一覧表示、および作成するコマンド。

tar コマンド構文#

tarには、BSDtarとGNUtarの2つのバージョンがありますが、機能上の違いがいくつかあります。ほとんどのLinuxシステムには、デフォルトでGNUtarがプリインストールされています。

tarの一般的な構文 コマンドは次のとおりです:

tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]
  • 操作 -1つの操作引数のみが許可され、必要です。最も頻繁に使用される操作は次のとおりです。
    • -作成 -c )-新しいtarアーカイブを作成します。
    • -抽出 -x )-アーカイブ全体またはアーカイブから1つ以上のファイルを抽出します。
    • -リスト -t )-アーカイブに含まれるファイルのリストを表示します
  • オプション -最も頻繁に使用される操作は次のとおりです。
    • -詳細 -v )-tarコマンドで処理されているファイルを表示します。
    • -file =archive =name -f archive-name )-アーカイブファイル名を指定します。
  • ARCHIVE_NAME -アーカイブの名前。
  • FILE_NAME(s) -アーカイブから抽出されるファイル名のスペース区切りのリスト。指定しない場合、アーカイブ全体が抽出されます。

tarコマンドを実行するときは、 tarの長い形式または短い形式を使用できます。 操作とオプション。長い形式の方が読みやすく、短い形式の方が入力が速くなります。長い形式のオプションの前には二重ダッシュ(-)が付いています )。短い形式のオプションには、接頭辞として1つのダッシュ(-)が付いています。 )、省略できます。

Tarアーカイブの作成#

Tarは、 gzipなどの幅広い圧縮プログラムをサポートしています。 、 bzip2 lzip lzma lzop xz およびcompress 。圧縮されたtarアーカイブを作成する場合、アーカイブファイル名にコンプレッサーサフィックスを追加することは一般的に認められています。たとえば、アーカイブが gzipで圧縮されている場合 、archive.tar.gzという名前にする必要があります。

tarアーカイブを作成するには、 -cを使用します オプションの後に-fが続く とアーカイブの名前。

たとえば、 archive.tarという名前のアーカイブを作成するには file1という名前のファイルから 、 file2 file3 、次のコマンドを実行します:

tar -cf archive.tar file1 file2 file3

長い形式のオプションを使用した同等のコマンドは次のとおりです。

tar --create --file=archive.tar file1 file2 file3

1つ以上のディレクトリまたはファイルの内容からアーカイブを作成できます。デフォルトでは、-no-recursion でない限り、ディレクトリは再帰的にアーカイブされます。 オプションが指定されています。

次の例では、 user_backup.tarという名前のアーカイブを作成します / home / userの ディレクトリ:

tar -cf backup.tar /home/user

-vを使用します 処理中のファイルを表示する場合のオプション。

Tar Gzアーカイブの作成#

Gzipは、tarファイルを圧縮するための最も一般的なアルゴリズムです。 gzipでtarアーカイブを圧縮する場合、アーカイブ名は tar.gzのいずれかで終わる必要があります またはtgz

-z オプションは、 gzipを使用してアーカイブを圧縮するようにtarに指示します 作成されたアルゴリズム。たとえば、指定されたファイルからtar.gzarchiveを作成するには、次のコマンドを実行します。

tar -czf archive.tar.gz file1 file2

Tar Bz2アーカイブの作成#

tarファイルを圧縮するためのもう1つの一般的なアルゴリズムは、bzip2です。 bzip2を使用する場合、アーカイブ名は tar.bz2で終わる必要があります またはtbz

bzip2を使用してアーカイブを圧縮するには アルゴリズム、 tarを呼び出す -jを使用 オプション。次のコマンドは、 tar.bz2を作成します 指定されたファイルからのアーカイブ:

tar -cjf archive.tar.bz2 file1 file2
タールアーカイブの一覧表示#

-listと一緒に使用する場合 ( -t )オプション、 tar コマンドは、tarアーカイブのコンテンツを抽出せずに一覧表示します。

以下のコマンドは、 archive.tarのコンテンツを一覧表示します ファイル:

tar -tf archive.tar
file1file2file3

ファイルの所有者、ファイルサイズ、タイムスタンプなどの詳細情報を取得するには、-verboseを使用します ( -v )オプション:

tar -tvf archive.tar
-rw-r--r-- linuxize/users       0 2018-09-08 01:19 file1-rw-r--r-- linuxize/users       0 2018-09-08 01:19 file2-rw-r--r-- linuxize/users       0 2018-09-08 01:19 file3

Tarアーカイブの抽出#

Linuxのアーカイブファイルのほとんどは、tarまたはtar.gz形式を使用してアーカイブおよび圧縮されます。コマンドラインからこれらのファイルを抽出する方法を知ることは重要です。

tarアーカイブを抽出するには、-extractを使用します ( -x )オプションの後にアーカイブ名が続く:

tar -xf archive.tar

-vを追加することも一般的です 抽出するファイルの名前を印刷するオプション。

tar -xvf archive.tar
別のディレクトリでのtarアーカイブの抽出#

デフォルトでは、tarは現在の作業ディレクトリのアーカイブコンテンツを抽出します。 -directoryを使用します ( -C )特定のディレクトリにアーカイブファイルを抽出するには:

たとえば、アーカイブの内容を / opt / filesに抽出するには ディレクトリ、次を使用できます:

tar -xf archive.tar -C /opt/files

TarGzおよびTarBz2アーカイブの抽出#

tar.gzなどの圧縮アーカイブを抽出する場合 またはtar.bz2 、解凍オプションを指定する必要はありません。コマンドは、 tarを抽出する場合と同じです。 アーカイブ:

tar -xf archive.tar.gz
tar -xf archive.tar.bz2

Tarアーカイブから特定のファイルを抽出する#

アーカイブ全体を抽出する代わりに、アーカイブから少数のファイルのみを抽出する必要がある場合があります。

tarアーカイブから特定のファイルを抽出するには、アーカイブ名の後に抽出するファイル名のスペースで区切られたリストを追加します。

tar -xf archive.tar file1 file2

ファイルを抽出するときは、-list で出力されるように、パスを含む正確な名前を指定する必要があります ( -t

アーカイブから1つ以上のディレクトリを抽出することは、ファイルを抽出することと同じです。

tar -xf archive.tar dir1 dir2

存在しないファイルを抽出しようとすると、次のようなエラーメッセージが表示されます。

tar -xf archive.tar README
tar: README: Not found in archive
tar: Exiting with failure status due to previous errors

ワイルドカードを使用してTarアーカイブからファイルを抽出する#

ワイルドカードパターンに基づいてアーカイブからファイルを抽出するには、-wildcardsを使用します シェルがパターンを解釈しないように、パターンを切り替えて引用します。

たとえば、名前が .jsで終わるファイルを抽出するには (Javascriptファイル)、使用できます:

tar -xf archive.tar --wildcards '*.js'
既存のtarアーカイブへのファイルの追加#

既存のtarアーカイブにファイルまたはディレクトリを追加するには、-appendを使用します ( -r )操作。

たとえば、 newfileという名前のファイルを追加するには archive.tarにするには、次のコマンドを実行します:

tar -rvf archive.tar newfile

Tarアーカイブからのファイルの削除#

-deleteを使用します アーカイブからファイルを削除する操作。

次の例は、ファイル file1を削除する方法を示しています。 archive.tarから:

tar --delete -f archive.tar file1

結論#

tarの最も一般的な使用法 コマンドは、tarアーカイブを作成および抽出することです。アーカイブを抽出するには、 tar -xfを使用します コマンドの後にアーカイブ名を入力し、新しいアーカイブ名を作成するには、 tar -czfを使用します その後に、アーカイブ名と、アーカイブに追加するファイルとディレクトリが続きます。

tarコマンドの詳細については、Gnutarのドキュメントページを参照してください。


Linux
  1. Linuxでファイルを圧縮および抽出するための16のtarコマンド

  2. Linuxでエイリアスを作成してエイリアスコマンドを使用する方法

  3. Linuxでファイルとディレクトリをアーカイブする方法[パート1]

  1. Linuxで「tar」コマンドを使用して.xzファイルパッケージを抽出するにはどうすればよいですか?

  2. ubuntulinuxでtar.gzファイルとtar.bz2ファイルを作成して抽出します

  3. Linuxtarコマンド

  1. Linuxで.gzファイルと.tar.gzファイルを抽出する方法

  2. LinuxでRARファイルを作成、抽出、または開く方法は?

  3. Linuxでtarコマンドを使用してファイルを圧縮および抽出する方法は?