🐈
【Python】tarを使った圧縮と展開
本記事について
本記事では、pythonでのtar
を使った圧縮・展開方法を紹介しています。
各説明で利用する圧縮・展開対象の構成は以下の通り。
圧縮・展開対象
tar_dir
├─ sub_dir
│ └─ tar_test_sub.txt
│
└─ tar_test.txt
tarを使った圧縮
以下の方法でtar
形式の圧縮ファイル(test.tar.gz
)を作成。
import tarfile
with tarfile.open('test.tar.gz', 'w:gz') as tar:
tar.add('tar_dir')
コマンドでの展開方法
圧縮したファイル(test.tar.gz
)をコマンドで展開する場合は以下の通り。
tar zxvf test.tar.gz -C /tmp
tarを使った展開
圧縮したファイル(test.tar.gz
)をpythonで展開する場合は以下の通り。
import tarfile
with tarfile.open('test.tar.gz', 'r:gz') as tar:
tar.extractall(path='test_tar')
展開せずに中身を参照
tarファイルの中身は、次の方法で展開せずに中身を確認することができます。
import tarfile
with tarfile.open('test.tar.gz', 'r:gz') as tar:
with tar.extractfile('tar_dir/sub_dir/tar_test_sub.txt') as f:
print(f.read())
Discussion