「images」フォルダがあり、その中に 0001.zip から 9999.zip があるとします。それらをすべて解凍し、ファイル名を持つサブフォルダに保存します。たとえば、0001.zip が解凍され、 /0001に保存すると、0002.zipが解凍されて/0002に保存されるので、やってみました
unzip '*.zip'
ただし、現在のフォルダー内のすべてのファイルが抽出されます。
次のようなことができます。
for file in *.zip; do
dir=$(basename "$file" .zip) # remove the .zip from the filename
mkdir "$dir"
cd "$dir" && unzip ../"$file" && rm ../"$file" # unzip and remove file if successful
cd ..
done
または、1 行でまとめて実行します。
for file in *.zip; do dir=$(basename "$file" .zip); mkdir "$dir"; cd "$dir"; unzip ../"$file" && rm ../"$file"; cd ..; done
元の .zip ファイルを保持する必要がある場合は、&& rm ../"$file"
ビットを削除してください。
for zip in *.zip
do
unzip "$zip" -d "${zip%.zip}"
done