📘

【Python】【Linux】複数のzipファイルを解凍する方法

2022/10/23に公開

PythonもしくはLinuxで、複数zipファイルを解凍する方法のご紹介です。
contentディレクトリ配下に複数zipファイルがあるとします。
解凍後にzipファイルを格納する各ディレクトリの名称は、解凍前のzipファイルの名称と同じにします。

解凍前

<content>
   ├── S100OCJ8.zip 
   ├── S100OBWX.zip
   ├── S100O98X.zip
   ├── S100OLCJ.zip

解凍後

<content>
   ├── S100OCJ8
   ├── S100OBWX
   ├── S100O98X
   ├── S100OLCJ

Pythonコードによる解凍方法

Python標準ライブラリのzipfileを使って解凍します。
解凍したいzipのファイル名をリストにして、for文で回します。

docid_list = ["S100OCJ8", "S100OBWX", "S100O98X", "S100OLCJ"]
import zipfile
for docid in docid_list:
    with zipfile.ZipFile(docid +'.zip') as zf:
        zf.extractall(docid)

Linuxコードによる解凍方法

こちらの方が1行で済んで楽です。

!for f in *.zip; do unzip -d "${f%*.zip}" "$f"; done

Discussion