Usé "descomprimir XXX.zip" para extraer un archivo zip, desafortunadamente, me equivoco.
Ahora quiero eliminar todos los archivos y directores generados por "descomprimir".
¿Cómo puedo deshacerlo?
utilizar esta:
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -v {}
Use esto si es escéptico (solicitará confirmación)
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -iv {}
-i
edición. :)awk '{print $4}'
: puede haber un nombre de archivo con espacios$4 $5 $6 ...
. :)unzip -l foo.zip | awk 'NR>3{print $NF}' | egrep -v '\--|files'|xargs rm -r
Estás en un lugar difícil; la
zipinfo(1)
utilidad estándar no proporciona ningún mecanismo para obtener nombres de archivo inequívocos de un archivo. Pero puedes acercarte:Si está seguro de que ninguno de los archivos tiene nuevas líneas, puede eliminar la
-i
opciónrm(1)
(lo que seguramente será tedioso).fuente
Hace el trabajo porque
-Z
invoca lazipinfo
utilidad y la-1
opción le dice que imprima solo nombres de archivoPuede encontrar más detalles sobre este medio
man unzip
yman 1 zipinfo
comandosfuente
Si desea limpiar su directorio después de descomprimir accidentalmente sin crear primero una carpeta, puede crear la carpeta, descomprimir en eso y luego:
"` "es súper útil para encadenar comandos pero es muy literal.
Los comentarios han mejorado esta respuesta, si desea asegurarse de eliminar también los archivos ocultos (lo que probablemente haga), haga esto
fuente
ls -a
).ls -A
para evitar errores de listado.
y..
Para hacer esto en Nautilus (sin la línea de comando), puede navegar hasta donde extrajo accidentalmente los archivos, ordenar los archivos haciendo clic en la pestaña "Modificado", luego seleccionar y eliminar todos los archivos etiquetados con la hora exacta ejecutó el comando descomprimir.
fuente
fuente