Auch wenn sowas nach einigen Jahren Erfahrung nicht passieren sollte: ein Mal guckt man nicht in die Dateiliste eines Archivs vor dem Entpacken und schon hat man ein Verzeichnis zugemüllt. Heute speziell bei mir: unzip.
Da das nun nicht das erste (und wohl auch nicht das letzte) Mal gewesen ist - ein schmutziger "Einzeiler" für die bash für das Entfernen der zuvor mit unzip entpackten Dateien, damit ich beim nächsten mal nicht wieder Zeit verliere. Anzuwenden im selben Ordner, in dem die Dateien entpackt worden sind und in dem das Archiv liegt.
mkdir -p /tmp/trash; unzip -l ARCHIV.zip | tail -n+4 | \
head -n-2 | tr -s " " | \
while read -r line; do echo "$line" | cut -d' ' -f5; done | \
xargs -I moveme mv moveme /tmp/trash;
Der Skript wird leider alle beim Entpacken erstellte Ordner nicht löschen (war bei mir in diesem Fall nicht relevant). Da könnte einem hinterher noch folgendes behilflich sein:
find . -depth -type d | xargs rmdir 2>/dev/null
Das soll im Arbeitsverzeichnis rekursiv alle leeren Ordner löschen. Nicht elegant, aber wer braucht schon leere Ordner? *hust*
Für das regexen der Ordnernamen aus der Archiv-Dateiliste war ich (noch) zu faul.
Achtung: getestet nur an einem meinen konkreten Fall, ohne Gewähr, etc.
Update:
Lösung für das Mitnehmen von Ordnern wäre:
mkdir -p /tmp/trash; unzip -l ARCHIV.zip | tail -n+4 | \
head -n-2 | tr -s " " | \
while read -r line; do echo "$line" | cut -d' ' -f5; done | cut -d'/' -f1 \
xargs -I moveme mv moveme /tmp/trash 2> /dev/null;
(Ungetestet). Hier besteht allerdings die Gefahr, dass man Ordner, die vor dem Entpacken des Archivs existierten, mitnimmt.