Ich habe "unzip XXX.zip" verwendet, um eine Zip-Datei zu extrahieren, leider mache ich einen Fehler.
Jetzt möchte ich alle von "unzip" erzeugten Dateien und Verzeichnisse löschen.
Wie kann ich es rückgängig machen?
benutze das:
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -v {}
Verwenden Sie diese Option, wenn Sie skeptisch sind (dies wird Sie zur Bestätigung auffordern).
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -iv {}
-i
awk '{print $4}'
- ein Dateiname mit Leerzeichen enthalten sein kann$4 $5 $6 ...
. :)unzip -l foo.zip | awk 'NR>3{print $NF}' | egrep -v '\--|files'|xargs rm -r
Du bist in einer schwierigen Lage; Das Standarddienstprogramm
zipinfo(1)
bietet keinen Mechanismus, um eindeutige Dateinamen aus einem Archiv abzurufen. Aber Sie können nah kommen:Wenn Sie sicher sind, dass keine der Dateien Zeilenumbrüche enthält, können Sie die
-i
Option auf entfernenrm(1)
(was sicherlich mühsam wird).quelle
Macht den Job , weil
-Z
Invokeszipinfo
Dienstprogramm und-1
Option teilt es nur Dateinamen druckenWeitere Details dazu finden Sie unter
man unzip
undman 1 zipinfo
Befehlequelle
Wenn Sie Ihr Verzeichnis nach dem versehentlichen Entpacken bereinigen möchten, ohne zuerst einen Ordner zu erstellen, können Sie den Ordner erstellen, in diesen entpacken und dann:
"` "ist sehr nützlich, um Befehle zu verketten, aber es ist sehr wörtlich.
Die Kommentare haben diese Antwort verbessert. Wenn Sie sicherstellen möchten, dass Sie auch versteckte Dateien entfernen (was Sie wahrscheinlich tun), tun Sie dies
quelle
ls -a
).ls -A
um Fehler beim Auflisten zu vermeiden.
und..
Um dies in Nautilus zu tun (ohne die Befehlszeile), können Sie einfach zu der Stelle navigieren, an der Sie die Dateien versehentlich extrahiert haben, die Dateien sortieren, indem Sie auf die Registerkarte "Geändert" klicken, und dann alle Dateien auswählen und löschen, die mit der genauen Uhrzeit beschriftet sind hat den Befehl zum Entpacken ausgeführt.
quelle
quelle