unzip *.zip, o se si trovano in sottocartelle, allora qualcosa come
find . -name "*.zip" -exec unzip {} \;
Basta inserire alcune virgolette per sfuggire al carattere jolly:
unzip "*.zip"
Funziona in bash, secondo questo link:
decomprimere \*.zip
Lo script di shell seguente estrae tutti i file zip nella directory corrente in nuove directory con il nome file del file zip, ad esempio:
I seguenti file:
myfile1.zip
myfile2.zip
Verrà estratto in:
./myfile1/files...
./myfile2/files...
Script della shell:
#!/bin/sh
for zip in *.zip
do
dirname=`echo $zip | sed 's/\.zip$//'`
if mkdir "$dirname"
then
if cd "$dirname"
then
unzip ../"$zip"
cd ..
# rm -f $zip # Uncomment to delete the original zip file
else
echo "Could not unpack $zip - cd failed"
fi
else
echo "Could not unpack $zip - mkdir failed"
fi
done
Sintesi della fonte
Utilizzo:
cd /dir/with/zips
wget -O - https://www.toptal.com/developers/hastebin/suvefuxuxo.bash | bash