Як знайти менеджера файлів за замовчуванням?


22

Як користувач Linux, я бачу, що деякі програми можуть вимагати відкриття шляху, і це призводить до запуску файлового менеджера. Я хотів би це зробити програмно, але як я можу знати, що таке файловий менеджер за замовчуванням? Чи є спосіб знайти цю інформацію? Будь-яка змінна середовище? Під "файловим менеджером" я маю на увазі програми, які дозволяють адмініструвати свої файли: створювати, перейменовувати, створювати папки тощо, як Nautilus (у GNOME) або Dolphin (у KDE).

Спасибі заздалегідь!

Відповіді:


7

Не існує такого поняття, як "Менеджер файлів за замовчуванням для Linux". Все залежить від того, як ви, можливо, намагаєтесь відкрити його. Якщо ви запитаєте XDG, вам доведеться перевірити, що XDG вважає, що має бути цей файловий менеджер. Це ж угода для будь-якого іншого "середовища", наприклад, Gnome або KDE. Якщо у вас все встановлено, для кожного з них цілком можливо (і чудово) мати інший "менеджер файлів за замовчуванням".

Випадки для програм за замовчуванням, здається, надходять в основному з Windows. Там ми маємо лише одне середовище, те, з чим нам подає Windows. Таким чином, поняття програми за замовчуванням насправді є ефективно загальносистемною. Це не так у Linux.

Те, що ви можете сприймати як додатки за замовчуванням під Linux, наприклад, що зберігається в змінній середовища $ EDITOR, - це не стільки «справжнє» додаток за замовчуванням, скільки просто умова, яку використовують багато людей, які пишуть системні інструменти та сценарії. Не соромтеся визначити $ FILEMANAGER, якщо це відповідає вашому випадку використання.


Я думав, що для цього може бути змінна середовище, і я насправді думав про її визначення. Приємна відповідь, дуже дякую.
Mauren

Я думаю, ви маєте на увазі XFCE замість XDG?
Герхард Бургер


18

Використовуйте для цього xdg-mimeкоманду. xdg має бути агностиком для настільних середовищ (наприклад xdg-open, передасть аргументи правильному відкривачу файлів). Щоб отримати менеджер файлів за замовчуванням, використовуйте:

xdg-mime query default inode/directory

Джерело


2
Це має бути правильна відповідь.
crypdick

17

Ви можете використовувати xdg-open <DIR>для запуску файлового менеджера в каталозі. Ви можете отримати запит на якусь xdgпрограму, щоб дізнатися, який файловий менеджер використовується.


Дякую за підказку. Я спробую використати це для вирішення своєї проблеми.
Mauren

1

я просто натрапив на ту ж проблему. (Я хотів би прокоментувати, але моя репутація не досить висока)

Я спробував, xdg-openі це startet EasyTag, який є редактором id3-тегів (якось смішно) :-)

я спробував відповісти Герхарду Бургерсу

xdg-mime query default inode/directory

і це повернулося dolphin.desktopв моєму випадку.

тож у моєму випадку правильне рішення було (замінивши ".dektop" на ""):

xdg-mime query default inode/directory | sed 's/.desktop//g'

але я лише тестую це в цій системі, я працюю


1

Нічого собі неймовірного, що тут ніхто не поставив правильної відповіді.

Програми за замовчуванням в Linux обробляються Freedesktop (колишній XDG) Mimeapps Standard та декількома іншими характеристиками, на яких заснований цей.

Arch Linux Wiki містить і зрозумілу статтю . Що ви шукаєте - це асоціація міметипу inode/directory.


Дякую за це Я використовую Arch, і я міг подумати, щоб перевірити вікі, але не став.
Колін Кінан

2
І як моя відповідь невірна? Я розмістив точну команду для запиту на inode/directoryасоціацію із xdg-mimeзапитом ...
Герхард Бургер

0

Здається, всі згадували inode/directoryтип MIME, і він xdg-openповинен працювати в більшості випадків для ваших потреб (програмно відкривати каталог через файловий менеджер), але іноді неправильна програма (яка не є файловим менеджером, наприклад Visual Studio Code) також може асоціювати це з inode/directoryдодатком за замовчуванням.

Крім того, існує також інтерфейс файлового менеджера для D-Bus ( org.freedesktop.FileManager1в сесійній шині), який можна використовувати для ваших потреб, так що ви також можете використовувати це, якщо ваш файловий менеджер підтримує цей інтерфейс D-Bus. Будь ласка, переконайтеся, що ви можете використовувати його, оскільки не всі файлові менеджери реалізували це, на сьогоднішній день, здається, Dolphin (KDE), Nautilus (GNOME) та Deepin File Manager (DDE) реалізували цей інтерфейс D-Bus. А щоб дізнатись, який власник процесу цей інтерфейс D-Bus (не потрібно цього робити, якщо ви просто хочете запросити шлях відкриття через програмний менеджер файлів), дивіться цю відповідь

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.