Есть ли способ (предпочтительно через GUI, но может быть через командную строку), чтобы извлечь файл ZIP и удалить ZIP после извлечения, все в одной команде?
(Я помню, что однажды видел, как кто-то делает что-то подобное в командной строке)
Есть ли способ (предпочтительно через GUI, но может быть через командную строку), чтобы извлечь файл ZIP и удалить ZIP после извлечения, все в одной команде?
(Я помню, что однажды видел, как кто-то делает что-то подобное в командной строке)
Ответы:
Для графического интерфейса я бы сказал, что самый простой способ - это скрипт наутилуса. Основная линия которого будет:
unzip "$item" && trash "$item"
Это работает в Bash / Dash так же просто. В Наутилусе все это будет выглядеть так:
#!/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
Вы можете просто написать скрипт bash. Это будет выглядеть примерно так:
unzip $1 && rm $1
где $ 1 - аргумент со значением имени файла вашего zip-файла. Затем введите псевдоним unzip в файле ~ / .bashrc для запуска этого скрипта. И после ввода в терминале:
unzip test.zip
ты получишь:
unzip test.zip && rm test.zip
-r
флага здесь. Zip-файлы не являются каталогами, поэтому в них нечего копировать.
Это довольно легко с помощью команды оболочки:
unzip <filename>.zip && rm <filename>.zip
Возможно, если вы используете nautilus, вы могли бы создать соответствующий nautilus-action
, чтобы автоматизировать команду через выбор GUI.
tar --delete-files
?