Как найти местоположение файла `.desktop` для конкретного приложения

Нет, расширение Ubuntu Firefox Modifications Extension позволяет легко выполнить это без проблем.

Чтобы ответить на ваш вопрос: нет, это не имеет значения.

2
задан 24 July 2019 в 19:21

2 ответа

Намного более быстрый и более универсальный поиск с locate команда:

$ locate *image*desktop
/usr/share/app-install/desktop/gimagereader:gimagereader-gtk.desktop
/usr/share/app-install/desktop/gnome-disk-utility:gnome-disk-image-mounter.desktop
/usr/share/app-install/desktop/gnome-disk-utility:gnome-disk-image-writer.desktop
/usr/share/app-install/desktop/imagej:imagej.desktop
/usr/share/app-install/desktop/imagemagick-6.q16:display-im6.q16.desktop
/usr/share/app-install/desktop/imagemagick:display-im6.desktop
/usr/share/app-install/desktop/imagevis3d:imagevis3d.desktop
/usr/share/app-install/desktop/kimagemapeditor:kde4__kimagemapeditor.desktop
/usr/share/app-install/desktop/simple-image-reducer:simple-image-reducer.desktop
/usr/share/app-install/desktop/trimage:trimage.desktop
/usr/share/applications/gnome-disk-image-mounter.desktop
/usr/share/applications/gnome-disk-image-writer.desktop
/usr/share/applications/screensavers/tessellimage.desktop

locate может искать миллионы файлов через несколько секунд, где это взяло бы find много много минут:

$ time find / -name '*image*.desktop'
real    0m52.563s
user    0m6.271s
sys     0m9.002s

$ time locate *image*desktop
real    0m0.705s
user    0m0.693s
sys     0m0.012s

Заметьте как grep был устранен из исходного метода и find команда была исправлена.

Недостаток locate база данных, ежедневно обновляется. Если Вы просто установили приложение, Вы ищете на сегодняшний день, необходимо будет сначала работать:

sudo updatedb
2
ответ дан 2 December 2019 в 02:11

Название desktop один только файл не может показать достаточную информацию. Фундаментальный подход должен искать содержание всех .desktop файлы системы для нахождения соответствующей (s).

Например, программа просмотра изображений отображена как Image Viewer в обзоре Приложений. Gnome Shell получил ту маркировку из .desktop файл. Найти .desktop файл (или файлы), который содержит эту строку, выполниться

find / -name '*.desktop' -exec grep -H 'Image Viewer' {} \; 2>/dev/null

Это использует find найти все .desktop файлы в системе. Для каждого из найденных файлов, grep вызывается, который ищет строку в файле в этом примере Image Viewer. 2>/dev/null подавляет ошибки разрешения, Вы неизбежно получаете поиск корневого диска без корневых полномочий.

2
ответ дан 2 December 2019 в 02:11

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

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