Там какая-либо программа должна обеспечить последовательный интерфейс через несколько типов архивирования?

jobs="$(jobs)"
while IFS= read
do
    echo $REPLY
done <<< "$jobs"

Ссылки:

13
29.11.2010, 14:45
8 ответов

Можно использовать p7zip. Это автоматически определяет тип архивирования, и распакуйте его.

p7zip является версией командной строки С 7 zip для Unix/Linux, сделанного независимым разработчиком.

7z e <file_name>

11
27.01.2020, 19:52

Я нашел этот небольшой отрывок только что и использовал его с тех пор. У меня просто есть он в моем .bashrc файле

extract () {
if [ -f $1 ] ; then
    case $1 in
        *.tar.bz2)  tar xjf $1      ;;
        *.tar.gz)   tar xzf $1      ;;
        *.bz2)      bunzip2 $1      ;;
        *.rar)      rar x $1        ;;
        *.gz)       gunzip $1       ;;
        *.tar)      tar xf $1       ;;
        *.tbz2)     tar xjf $1      ;;
        *.tgz)      tar xzf $1      ;;
        *.zip)      unzip $1        ;;
        *.Z)        uncompress $1   ;;
        *)          echo "'$1' cannot be extracted via extract()" ;;
    esac
else
    echo "'$1' is not a valid file"
fi
}
5
27.01.2020, 19:52
  • 1
    Это более эффективно, чем принятый ответ с тех пор 7z e foo.tar.gz просто листы Вы с a foo.tar файл. –  Wilfred Hughes 17.05.2014, 23:44

В Debian/Ubuntu существует unp пакет, который является сценарием Perl, который действует как frontend для многих утилит архивации.

2
27.01.2020, 19:52

От другого вопроса: atool, который также обрабатывает различные типы архивирования и более мощен, чем unp потому что это также обрабатывает список содержания, находя различия между архивами и т.д.

2
27.01.2020, 19:52

Tar GNU (и звезда) имеет по крайней мере некоторые возможности автоматического обнаружения сжатия:

tar xf foo.tar.gz
tar xf foo.tar.bz

просто работа.

1
27.01.2020, 19:52
  • 1
    Это действительно зависит от версии tar, какие форматы это может автоматически обнаружить, но кроме которого это работает хорошо... IIRC star на самом деле больше стандартизованного способа, где tar GNU является нестандартным расширением. –  xenoterracide 28.08.2010, 20:05
  • 2
    tar GNU может распаковать все сжатые архивы, которые создаются с любым из переключателей фильтра сжатия (z, j, J, - lzma), это обнаружит сжатие автоматически. спасибо –  polemon 29.11.2010, 17:58
  • 3
    @xenoterracide: Ну, автор звезды подверг критике tar GNU много в его обычном стиле - эти записи могли быть смещены (игнорирующий отрицательные стороны о звездообразных и положительных сторонах у tar GNU), содержать, вероятно, некоторый FUD и вероятно устарели. –  maxschlepzig 29.11.2010, 19:29

Я думаю ark KDE архивация инструмента может быть выполнен без GUI. От ark страница справочника

ark --batch archive.tar.bz2

Извлечет архив tar.bz2 в текущий каталог, не показывая GUI.

Поддержка ковчегов различных форматов архива зависит, на которых приложениях Вы установили (например, для rar она зависит от unrar), но я не знаю ни о каких форматах, которые она не может обработать.

1
27.01.2020, 19:52

Я удивлен, что никто не упомянул инструмент dtrx , который был предложен в этот ответ .

Кажется, подходит под запрос.

1
27.01.2020, 19:52

Unarchiver поддерживает извлечение около 50 различных форматов с унифицированным интерфейсом.

По умолчанию создается каталог, если существует более одного файла или папки верхнего -уровня.

Просмотр егоman-страницы .

Версия для командной строки поддерживает Linux и доступна здесь .

1
27.01.2020, 19:52

Теги

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