圧縮ディレクトリから単一のファイルを抽出する場合tar
(tar.gzから特定のファイルを抽出する方法)ファイルのコピーは圧縮されたままになりますか、それともディレクトリから完全に削除されましたか?
たとえば、
$ tar -zxvf mydir.tar.gz file1.txt
file1.txt
予約はに保存されますかmydir.tar.gz
?
答え1
もちろん、圧縮されているかどうかにかかわらず、tarファイルは変更されません。
「tarディレクトリ」はありません。ゼロ個以上のディレクトリ内容を含む圧縮tarファイルが存在する可能性があります。
答え2
簡単なテストの結果、ファイルからコピーが抽出されても、ファイルがアーカイブに残っていることがわかりました。
圧縮パッケージの内容物$ tar ztvf somedir.tar.gz
drwxrwxr-x vagrant/vagrant 0 2018-08-08 00:33 somedir/
-rw-rw-r-- vagrant/vagrant 6 2018-08-08 00:33 somedir/file2.txt
-rw-rw-r-- vagrant/vagrant 6 2018-08-08 00:33 somedir/file1.txt
ファイルサイズ、181バイト
$ ll
total 4
-rw-rw-r-- 1 vagrant vagrant 181 Aug 8 00:33 somedir.tar.gz
タルボールからファイルを抽出する
$ tar zxvf somedir.tar.gz somedir/file1.txt
somedir/file1.txt
ファイルを解凍した後
$ ll
total 8
drwxrwxr-x 2 vagrant vagrant 4096 Aug 8 00:35 somedir
-rw-rw-r-- 1 vagrant vagrant 181 Aug 8 00:33 somedir.tar.gz
tarballのサイズは常に181バイトに保たれます。