El siguiente script bash extrae todos los archivos zip en el directorio actual en nuevos directorios con el nombre del archivo zip, es decir:
Los siguientes archivos:
myfile1.zip
myfile2.zip
Se extraerá a:
./myfile1/files...
./myfile2/files...
Script de 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