¿Hay alguna manera de "extraer y eliminar el archivo zip" en un solo comando?


13

¿Hay alguna manera (preferible a través de la GUI, pero puede ser a través de la línea de comandos) para extraer un archivo zip y eliminar el zip después de extraerlo, todo en un solo comando?

(Recuerdo que un día vi a alguien haciendo algo como esto en la línea de comando)


No conozco un solo comando, pero puede poner en cola el segundo comando. descomprimir 1.zip; rm 1.zip
Amey Jah

Respuestas:


13

Para una GUI, diría que la forma más fácil es un script nautilus. La línea principal de las cuales sería:

unzip "$item" && trash "$item"

Funciona en bash / dash igual de fácil. En nautilus todo se vería así:

descomprimir eliminar script nautilus

#!/bin/bash
# Nautilus script to unzip and then remove a zip archive.
# Nautilus script usually go in "$HOME/.gnome2/nautilus-scripts"

IFS='
'
for item in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
    if [ -n "$(file -b "$item" | grep -o 'Zip')" ]; then
        unzip "$item" && trash "$item"
        # use trash instead of rm to move them to trash
        # (trash-cli package installed)
    fi
done

No es lo que vi, pero funciona. ¡Gracias de todos modos!
Tom Brito

10

Simplemente podrías escribir un script bash. Se verá algo como esto:

unzip $1 && rm $1

donde $ 1 es el argumento con un valor del nombre del archivo zip. Luego, alias descomprima el comando en el archivo ~ / .bashrc para ejecutar este script. Y después de escribir en la terminal:

unzip test.zip

conseguirás:

unzip test.zip && rm test.zip

2
No hay necesidad de la -rbandera aquí. Los archivos Zip no son directorios, por lo que no hay nada en lo que recurrir.
Trevor Merrifield

4

Es bastante fácil a través de un comando de shell:

unzip <filename>.zip && rm <filename>.zip

Quizás, si está utilizando nautilus, podría crear un relevante nautilus-actionpara automatizar el comando a través de una selección de GUI.


sí, en realidad estos son 2 comandos en una sola línea ... Realmente estoy tratando de recordar el comando único que vi a alguien usar ...
Tom Brito

No veo cómo importa si es uno o dos comandos. ¿Estás seguro de que usó un alias o de hecho se comprimió y usó tar --delete-files?
con-f-use
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.