Как именно файлы открываются из Nautilus?
=========================================

 Я спрашиваю это из любопытства, чтобы узнать, что происходит «за кулисами», когда я дважды щелкаю файл в файловом браузере, скажем, Наутилус. В частности, с какими параметрами исполняемый файл выполняется? Где файл .desktop вступает в игру и как Nautilus отправляет имя файла? 

  Это было актуально для меня, когда Okular открывал несколько экземпляров одного и того же файла, и мне приходилось писать сценарий оболочки, который имел обыкновение терпеть неудачу, потому что имя файла не было передано должным образом. (Пробелы в именах файлов будут преобразованы в HTML% 20 символов, и мне пришлось много выяснить, как именно передаются имена файлов.) 

 

 Существуют две директории, которые содержат `.desctop` файлов: `/usr/share/applications/` (глобальный список для всех пользователей) и `~/.local/share/applications/` (для конкретного пользователя). Оба каталога содержат список ассоциаций типов файлов (`defaults.list` и `mimeapps.list` соответственно). 

  Когда вы щелкаете файл, Nautilus находит соответствующий файл `.desctop` и запускает вашу программу. Каждый файл `.desctop` содержит клавишу `Exec`, которая задает командную строку (программу и ее параметры). См.  [этот документ](http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s06.html)  для подробностей о клавише `Exec`. 

  Если в файле `.desctop` указана программа без полного пути, она будет найдена на вашем `$PATH. При установке по умолчанию $PATH` обычно включает в себя следующие каталоги: `/usr/local/sbin`, `/usr/local/bin`, `/usr/sbin`, `/usr/bin`, `/sbin`, `/bin`.