Você pode tentar:
for z in ./*.zip
do name="${z%%_*}"; dest=".${name//[ .-]/}"; mkdir "$dest"; unzip "$z" -d "$dest"
done
Para cada arquivo z
ip, ele extrai a parte do nome ( ${z%%_*}
exclui o sufixo com avidez) e remove qualquer ocorrência de ponto, traço e espaço ( ${name//[ .-]/}
) e passa a string resultante como um argumento para mkdir
para criar o diretório correspondente. Em seguida, descompacta o arquivo para o d
estination especificado.