linux

【Linux bash】Zipファイルを一括で開く方法

2022年2月5日

Zipファイルを開くには「unzip」をメインで使うことが多いです。

unzipで新規フォルダ作成してその中にunzipで解凍したファイルを格納する場合は「unzip -d xxxxx yyyyy.zip」で解凍することができますが、
複数のZipファイルを開きたい場合が度々あります。

その場合、findまたはforと組み合わせることで一括解凍できそうです。

findで頑張る場合

 find ./ -type f -name "*.zip"|xargs -I {} bash -c 'unzip -d ${0%*.zip} ${0%}' {}

findでzipファイルを検索した値をパラメータ展開でunzipを行ってます。

forで頑張る場合

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

こちらもforで取得したものをパラメータ展開で解凍してます。

こちらのほうがシンプルかな

git入れればWindowsでも使える

Windowsでgitと入れるとgit bashがインストールされるので、上記コマンドでzip解凍ができます。

BEASTSAVORBEATSAVORでBeat Saberのカスタム曲を入れるときに一つずつzip解凍しなくて楽になりました。
(解凍処理くらいバッチ作れっていうのありますが)

-linux