フォルダ内にいくつかのzipファイルa.zip b.zip
などがあります。それらを解凍して、次のようなそれぞれのディレクトリに配置したいと思いa,b
ます。そのためのUNIXスクリプトを提案していただけますか。
3979 次
3 に答える
6
それほど難しいことではありません(テストされていません!):
#!/bin/bash
for zip in *.zip ; do
dir=${zip%.zip}
mkdir "$dir"
unzip -rd "$dir" "$zip"
done
于 2012-07-24T10:30:35.327 に答える
1
次のように、UNIXでunzipユーティリティを使用できます。
#!/bin/bash
for f in *.zip
do
echo "unzipping $f"
unzip $f -d ${f%.*}
done
このスクリプトをディレクトリで実行すると、必要に応じてすべてのzipファイルが解凍されます。たとえば、a.zip、b.zipはそれぞれディレクトリaとbに解凍されます。
于 2012-07-24T10:32:10.987 に答える
1
この以前の投稿は、これと同じ機能を実現するのに役立ちました。コンピューターで覚えておくのに役立つスクリプトも作成しました。
$ ls *.zip|awk -F'.zip' '{print "unzip "$0" -d "$1}'|sh
同様に、関数alias
を実行するためのを作成できます。bash
$ alias munzip='for f in *.zip; do unzip -d "${f%*.zip}" "$f"; done'
ドライランの場合は、事前にテストします。
$ alias testmunzip='for f in *.zip; do echo unzip -d "${f%*.zip}" "$f"; done'
他の誰かが同じ効果を探している場合に備えて、この関連情報を1ページにまとめておくと役立つかもしれないと思っただけです。
于 2013-02-19T04:51:36.993 に答える