Как имитировать 7zip, “извлекают к”. “” опция контекстного меню из Windows

Я являюсь довольно новым при использовании терминала и задавался вопросом, как поместить папку, полную .zip файлов в sub папки, названные тем же как .zip файл, из которого это было извлечено.

До сих пор я изобразил это unzip '*.zip' -d извлечет все .zip файлы в единственный каталог, но я не уверен, как указать/создать на папки назначения для -d для каждого .zip файла.

С другой стороны, Инструмент Конфигурации Действия Наутилуса походит, если смогли подражать 7zip команда Extract To, но это кажется немного более пугающим.

2
задан 25 January 2017 в 21:08

3 ответа

Используя Nautilus Action Config Tool опция и вызов моего script zippy.sh:

#!/bin/bash
# Unzipping and organizing files from nautilus
m=0 # counter
while [ -n "$1" ] && [ -f "$1" ]
do
    if [[ "$1" =~ \.zip$ ]]
    then
        dir="$1"
        dir=${dir%.*}
        unzip "$1" -d "$dir"
        m=$(($m + 1))
        shift
    fi
done
zenity --info --text="Operations finished and "$m" zip files unzipped"
exit 0
  1. сценарий Места здесь:

    ~/.local/share/nautilus/scripts/
    
  2. Делают это исполняемым файлом с chmod +x ~/.local/share/nautilus/scripts/zippy.sh

Объясненный:

  1. -n и -f номер документа проверки не является нулем и является файлом соответственно

  2. =~ \.zip$, удостоверяются, что это - zip-файл

  3. ${dir%.*}, убегает zip часть имени файла

  4. m=$(($m + 1)) количество, на скольких работаются zip-файлы.

  5. shift просматривают файлы

  6. zenity, отображают окно сообщения для указания на операционное заключение

1
ответ дан 2 December 2019 в 03:42

Я отредактировал сценарий, который я нашел для имени файла к имени папки для извлечения в созданную папку.

Пересмотренный: В Вашем каталоге создают файл с:

#!/bin/bash
find . -type f ! -name "*exto*" | while read file;
do
    f=$(basename "$file")
    f1=${f%.zip}
    mkdir "$f1"
    unzip "$f" -d "$f1" 
done

В терминале:

chmod +x exto
./exto
1
ответ дан 2 December 2019 в 03:42

Вы могли также просто загрузить 7Zip версия для Linux. https://sourceforge.net/projects/p7zip/files / Это называют p7zip

https://www.ibm.com/developerworks/community/blogs/6e6f6d1b-95c3-46df-8a26-b7efd8ee4b57/entry/how_to_use_7zip_on_linux_command_line144? lang=en Это также предоставляет очень подробное руководство установки и использования

0
ответ дан 2 December 2019 в 03:42

Другие вопросы по тегам:

Похожие вопросы: