Linuxの「tar」は、テープアーカイブを表し、多くのLinux/Unixシステム管理者によって、Linuxでのテープドライブバックアップの取り扱いに使用されています。
Linuxのtarコマンドは、ファイルとディレクトリのコレクションを非常に圧縮されたアーカイブファイル、一般的にはtarballまたはtar、gzip、およびbzipとして知られているものにリッピングするために使用されます。Linux。
tarは、圧縮されたアーカイブファイルを作成するために最も広く使用されており、これらのファイルは簡単にディスクから別のディスクまたはマシンからマシンに移動できます。

この記事では、(tar、tar.gz、およびtar.bz2)圧縮を使用してアーカイブファイルを作成する方法、アーカイブファイルを抽出する方法、単一ファイルを抽出する方法、ファイルの内容を表示する方法、ファイルを確認する方法、ファイルまたはディレクトリを既存のアーカイブファイルに追加する方法、tarアーカイブファイルのサイズを推定する方法など、さまざまなtarコマンドの例をレビューおよび議論します。
このガイドの主な目的は、tarアーカイブ操作の理解と専門家になるのに役立つかもしれないさまざまなtarコマンドの例を提供することです。
目次
1. Tarアーカイブファイルの作成
以下のtarコマンドの例では、現在の作業ディレクトリにディレクトリ/home/tecmintのためのtecmint-17-11-2023.tar
という名前のtarアーカイブファイルが作成されます。
tarコマンドの例を見てみましょう。
tar -cvf tecmint-17-11-2023.tar /home/tecmint/

上記のtarコマンドで使用される各オプションについて議論しましょう。
c
– Creates a new .tar archive file.v
– Verbosely show the .tar file progress.f
– File name type of the archive file.
2. 圧縮されたTarアーカイブの作成
圧縮されたアーカイブファイルを作成するには、オプション'z'
(gzipを使用してアーカイブを圧縮する)を使用します。たとえば、以下のコマンドは、ディレクトリ’/home/MyImages‘のために'MyImages-17-11-2023.tar.gz'
という名前の圧縮ファイルを生成します。(注:'tar.gz'
と'tgz'
は同じ意味です)。
tar cvzf MyImages-17-11-2023.tar.gz /home/tecmint/MyImages OR tar cvzf MyImages-17-11-2023.tgz /home/tecmint/MyImages

3. Linuxでのtar.bz2ファイルの作成
bz2機能は、gzipよりもサイズが小さいアーカイブファイルを圧縮して作成します。ただし、bz2圧縮方法は、圧縮および展開の両方においてより多くの時間が必要ですが、gzipは両方のプロセスでより高速です。
すべてのファイルとサブディレクトリをバンドルして、/home/phpディレクトリ内にあるファイルを使用して、Phpfiles-org.tar.bz2という名前の高度に圧縮された新しいtarアーカイブを作成するには、-j
オプションを使用します。これにより、tarがbzip2圧縮アルゴリズムを利用し、効率的な保存と転送のためのより小さいファイルサイズが生成されます。
注意:tar.bz2およびtbzは類似の用語であり、tb2を指します。
tar cvfj Phpfiles-org.tar.bz2 /home/tecmint/php OR tar cvfj Phpfiles-org.tar.tbz /home/tecmint/php OR tar cvfj Phpfiles-org.tar.tb2 /home/tecmint/php

4. Tarアーカイブの抽出
tarファイルをuntarまたは抽出するには、単純に次のコマンドを実行します。オプション’'x'
‘(抽出)を使用します。たとえば、以下のコマンドは、現在の作業ディレクトリにあるファイル’tecmint-17-11-2023.tar‘をuntarします。
tar -xvf tecmint-17-11-2023.tar
別のディレクトリにuntarしたい場合は、オプション’-C
‘(指定されたディレクトリ)を使用します。
tar -xvf tecmint-17-11-2023.tar -C /home/tecmint/
5. 圧縮されたtar.gzアーカイブの抽出
圧縮されたtarアーカイブファイル’MyImages-17-11-2023.tar.gz‘の内容を抽出するには、次のコマンドを使用します。
tar -xvf MyImages-17-11-2023.tar.gz
別のディレクトリに抽出したい場合は、オプション’-C
‘を使用し、指定されたディレクトリにファイルを抽出します。
tar -xvf MyImages-17-11-2023.tar.gz -C /home/tecmint/
6. tar.bz2アーカイブの抽出
高度に圧縮されたtar.bz2ファイルを解凍するには、次のコマンドを使用します。これにより、アーカイブファイルからすべてのファイルがuntarされます。
tar -xvf Phpfiles-org.tar.bz2
7. tarアーカイブの内容のリスト表示
tarアーカイブファイルの内容をリスト表示するには、次のコマンドを実行します。オプション’-t
‘(コンテンツのリスト表示)を使用すると、’tecmint-17-11-2023.tar’アーカイブ内に含まれるファイルとディレクトリの詳細なリストが表示されます。
tar -tvf tecmint-17-11-2023.tar

8. tar.gzアーカイブのコンテンツの表示
次のコマンドは、「MyImages-17-11-2023.tar.gz」アーカイブ内に含まれるファイルとディレクトリの詳細なリストを表示します。
tar -tvf MyImages-17-11-2023.tar.gz

9. tar.bz2アーカイブのコンテンツの印刷
次のコマンドは、「Phpfiles-org.tar.bz2」アーカイブ内の内容の概要を抽出せずに提供します。
tar -tvf Phpfiles-org.tar.bz2

10. アーカイブから単一のファイルを抽出
アーカイブ Phpfiles-org.tar.bz2からwp-cron.php
という単一のファイルを抽出するには、次のコマンドを使用します。抽出したいファイルの正しいパスを指定してください。
tar -xvf Phpfiles-org.tar.bz2 home/tecmint/php/wp-cron.php

11. アーカイブから複数のファイルを抽出
tar
、tar.gz
、およびtar.bz2
アーカイブファイルから複数のファイルを抽出または展開するには、次のコマンドを使用します。指定されたアーカイブファイルからファイルを抽出します。
tar -xvf tecmint-17-11-2023.tar "file1" "file2" tar -zxvf MyImages-17-11-2023.tar.gz "file1" "file2" tar -jxvf Phpfiles-org.tar.bz2 "file1" "file2"
12. Linuxでワイルドカードを使用してファイルのグループを抽出
ファイルのグループを抽出する際には、ワイルドカードを使用して抽出します。たとえば、.php
から始まるすべてのファイルのグループを tar
、tar.gz
、tar.bz2
アーカイブファイルから抽出するには、次のようにします:
tar -xvf Phpfiles-org.tar --wildcards '*.php' tar -zxvf Phpfiles-org.tar.gz --wildcards '*.php' tar -jxvf Phpfiles-org.tar.bz2 --wildcards '*.php'
13. 既存のアーカイブにファイルを追加する
ファイルやディレクトリを既存の tar
、tar.gz
、tar.bz2
アーカイブファイルに追加するには、オプション -r
を使用します。これにより、ファイルが既存のアーカイブファイルに追加されます。
tar -rvf tecmint-14-09-12.tar xyz.txt tar -rvf MyImages-14-09-12.tar.gz xyz.txt tar -rvf Phpfiles-org.tar.bz2 xyz.txt
14. Tar アーカイブファイルの検証
次のコマンドは、指定されたアーカイブファイルに含まれるファイルとディレクトリの詳細なリストを表示し、アーカイブの内容を目視で確認できます。アーカイブが破損しているか不完全である場合、この検証プロセスによってリスト作成中にエラーが発生する可能性があります。
tar -tvf Phpfiles-org.tar.bz2
15. Tar アーカイブファイルのサイズを確認する
tar
、tar.gz
、tar.bz2
アーカイブファイルのサイズを確認するには、次のコマンドを使用します。これにより、アーカイブファイルのサイズがキロバイト (KB) で表示されます。
tar -czf - tecmint-14-09-12.tar xyz.txt | wc -c tar -czf - MyImages-14-09-12.tar.gz xyz.txt | wc -c tar -czf - Phpfiles-org.tar.bz2 xyz.txt | wc -c
16. Tar アーカイブを作成する際のファイルの除外
指定されたファイルやディレクトリを除外してtarアーカイブファイルを作成するには、次のコマンドを使用します。
tar --exclude='file1.txt' -zcvf backup.tar.gz /home/tecmint tar --exclude='/home/tecmint/uploads' -zcvf backup.tar.gz /home/tecmint
上記のコマンドでは、ファイル「file1.txt」と「uploads」ディレクトリを/home/tecmintフォルダから除外しました。
特定のファイル拡張子(.txt
)を除外する場合は、次を使用します。
tar --exclude='*.txt' -zcvf backup.tar.gz /home/tecmint
17. Tarアーカイブからファイルを削除
次のtarコマンドは、--delete
オプションを使用して、既に作成されたtarファイルからファイルまたはディレクトリを削除します。
tar --delete -f backup.tar.gz file1.txt tar --delete -f backup.tar.gz '/home/tecmint/uploads'
18. Tarアーカイブからファイル拡張子を抽出
次のtarコマンドは、--wildcards
オプションを使用して、特定の拡張子.png
のファイルのみをtarアーカイブファイルから抽出します。
tar -xvf backup.tar.gz --wildcards '*.png'
19. Tarコマンドの使用法とオプション
「tar」コマンドのさまざまなオプションと使用パターンを理解することは、効率的なファイルのアーカイブ、圧縮、および抽出には不可欠です。
-c
– アーカイブファイルを作成します。-x
– アーカイブファイルを抽出します。-v
– アーカイブファイルの進行状況を表示します。-f
– アーカイブファイルのファイル名です。-t
– アーカイブファイルの内容を表示します。-u
– 既存のアーカイブファイルにアーカイブを追加します。-j
– アーカイブを bzip2 を介してフィルタリングします。-z
– アーカイブを gzip を介してフィルタリングします。-r
– 既存のアーカイブファイルにファイルやディレクトリを追加または更新します。-W
– アーカイブファイルを検証します。-A
– アーカイブファイルを連結します。--wildcards
– UNIX tar コマンドでパターンを指定します。--exclude
– アーカイブを作成する際にファイルやディレクトリを除外します。--delete
– アーカイブからファイルやディレクトリを削除します。
これで以上です。上記の tar コマンドの例 で学ぶのに十分であることを願っています。さらに情報が必要な場合は、man tar コマンドを使用してください。
# man tar
大きな tar アーカイブファイルを複数の部分またはブロックに分割する場合は、次の記事をご覧ください:
もし私たちが何か例を見逃していたら、コメントボックスから共有してください。そして、この記事を友達と共有することを忘れないでください。これが感謝の最良の方法です…