tar
linuxtarは、.tar形式のアーカイブを作成(展開)をする。
アーカイブと圧縮の違いについて、「アーカイブ」は、複数のファイルやディレクトリをまとめて1つのファイルにする。一方「圧縮」は、ファイルのサイズを小さくして1つにまとめることを言います。
Linuxでは、アーカイブの代表的なコマンドはtar、圧縮の代表的なコマンドはgzipになります。
[user@centos7 ~]$ tar オプション1 オプション2 ファイル名
option1
c | 新規アーカイブを作成 |
---|---|
d | アーカイブの内容とディレクトリを比較 |
r | 作成済みのアーカイブの最後にファイルを追加 |
t | アーカイブ内容を一覧表示 |
u | 同名ファイルの場合、新しいファイルのみ追加 |
x | アーカイブからファイルを展開 |
A | 作成済みのアーカイブにファイルを追加 |
option2
f | アーカイブファイル名を指定する際に使用 |
---|---|
h | シンボリック・リンクではなく、実体あるファイルを対象とする |
k | アーカイブから展開したファイル名と同名のファイル名が存在する場合は上書きを行わない。 |
m | ファイル名を展開した際、ファイルの更新時間を展開した時間にする |
p | すべてのアクセス情報(パーミッション)を保持してアーカイブする |
v | 処理経過したファイル一覧を詳細に表示 |
z | 「gzip」を通して処理する |
Z | 「compress」を通して処理する |
example of use
[user@centos7 ~]$ tar -cvf test.tar test-dir/
test-dir/
test-dir/text.txt
test-dir/text2.txt
test-dir/text3.txt
新規アーカイブ「test.tar」を作成、「test-dir」ディレクトリ以下をアーカイブし処理したファイル名を表示します。
[user@centos7 ~]$ tar -rf test.tar text4.txt
作成済みのアーカイブファイルに、さらにファイルを追加する。
[user@centos7 ~]$ tar -tf test.tar
test-dir/
test-dir/text.txt
test-dir/text2.txt
test-dir/text3.txt
アーカイブファイル内にあるファイルを確認する
[user@centos7 ~]$ tar -xvf test.tar
test-dir/
test-dir/text.txt
test-dir/text2.txt
test-dir/text3.txt
アーカイブ「test.tar」から、すべてのファイルを展開し処理したファイル名を表示する。