Tatsächlich funktioniert die von m1k3y02 ( for i in *; do zip -r "$i.zip" $i; done
) bereitgestellte Lösung nur, wenn das aktuelle Verzeichnis nur Unterverzeichnisse enthält.
Bessere Möglichkeit, nur Unterverzeichnisse zu finden und zu komprimieren:
for dir in ./* ;do if [[ -d $dir ]];then zip -r $.zip $dir fi done
oder
find . -type d -maxdepth 1 -exec zip -r {}.zip {} \;