Я пишу скромный файловый менеджер и ищу список различных типов файлов и что приложения по умолчанию использование 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
диалоговое окно. Я также нуждаюсь в помощи, выясняя "волшебные" числа и как можно было бы интерпретировать их. Возможно, ссылка обучения?
Отредактируйте Это не дубликат того, Как открыть файл с приложением по умолчанию из командной строки? потому что:
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?.
Большинство современных настольных программ не использует 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