Список типов файлов и приложения Ubuntu по умолчанию для открытия

Я пишу скромный файловый менеджер и ищу список различных типов файлов и что приложения по умолчанию использование Ubuntu для открытия их с.

До сих пор я только выяснил "текст", открытый с gedit, "отобразите" открытый с eog (глаз гнома) и "аудио", открытое с ogg123. Я не уверен если ogg123 приложение по умолчанию все же.

Я ценил бы немного справки, расширяющей список в коде ниже:

function OpenFileWithMagic () {

local FileType
FileType=$(file -i "$DfName/$2" | grep -oP '(?<=: ).*?(?=/)')
logger "bafman - OpenFileWithMagic - FileType: $FileType DfName: - $DfName parm 1: $1 2: $2 3: $3 4: $4"

case $FileType in

text)
    # TODO: expand list of file types and associated applications to open them with
    if [[ $4 == root ]]; then
        gsu gedit $DfName/$2
    else
        gedit $DfName/$2
    fi ;;
image)
    eog $DfName/$2 ;;
audio)
    ogg123 $DfName/$2 ;;
esac

} ### OpenFileWithMagic ()
export -f OpenFileWithMagic

Примечания: export только требуется, потому что файл открыт при двойном щелчке от yad диалоговое окно. Я также нуждаюсь в помощи, выясняя "волшебные" числа и как можно было бы интерпретировать их. Возможно, ссылка обучения?


Отредактируйте Это не дубликат того, Как открыть файл с приложением по умолчанию из командной строки? потому что:

  • Тот вопрос состоит в том, как открыть файл из командной строки. Этот вопрос состоит в том, как делают это из сценария удара в a case структура.
  • Ответ там привел бы к rhythembox будучи используемым для звуковых файлов, который не требуется. ogg123 больше подходит для проигрывания звуков без нового открываемого окна и соглашающийся с сообщениями об ошибках Python.
  • Ответ там использовал бы xdg-open /bin/mv получающийся в:

    gvfs-open: /bin/mv: error opening location: No application is registered as handling this file
    
  • С вышеупомянутым ударом пишут сценарий file -i /bin/mv управляйте результатами в:

    /bin/mv: application/x-executable; charset=binary
    

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


Ответьте на комментарии, Как указано Bose DK, в которой могут быть найдены главные типы файлов /usr/share/mime/types. Здесь существуют дополнительные типы, которые будут считать таким как Video (подходящий видеоплеер Ubuntu по умолчанию должен быть получен), Application (вместо того, чтобы выполнить его, информация о приложении должна быть отображена), и Message (У меня нет подсказки, как отобразить это). Дополнительные типы пантомимы, нуждающиеся в дальнейшем исследовании, inode, model, multipart и x-content.

на rinzwind указывают ogg123 не плеер звукового файла по умолчанию в Ubuntu. Подходящее по умолчанию установленное приложение Ubuntu для проигрывания звуковых файлов canberra-gtk-play как отвечено 5 октября 2016 wjzndrea в этом Вопросы и ответы: строка может потянуть символы (или цвета) быть добавленной к меню списка файлов Bash?.

1
задан 7 May 2017 в 03:26

1 ответ

Большинство современных настольных программ не использует file, но Общая База данных информации MIME для типов файлов и спецификация ассоциаций приложений MIME для приложений по умолчанию.

В Bash можно использовать xdg-пантомима , чтобы предположить тип MIME файла и получить приложение по умолчанию для данного типа MIME:

$ xdg-mime query filetype bla.sh
application/x-shellscript
$ xdg-mime query default application/x-shellscript
emacs.desktop

С xdg-открывают , можно просто открыть файл с приложением по умолчанию, таким образом, Вы не должны на самом деле заботиться о типах MIME сами:

$ xdg-open bla.sh
10
ответ дан 3 December 2019 в 06:19

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

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