не может запустить приложение, если не по правильному пути

У меня есть следующее приложение «Индикатор системного монитора», и я хочу, чтобы оно запускалось при загрузке. Поэтому я пытаюсь найти имя приложения, которое будет вызывать его из терминала, я нахожу «exe» в / usr / share / Applications, а имя - индикатор-монитор.desktop

sudo /usr/share/applications/indicator-monitor

он говорит, что команда не найдена

Если я удаляю sudo, он говорит, что разрешение отклонено.

Однако, когда я делаю

cd /usr/share/applications && sudo indicator-monitor

он выполняется нормально.

Если я добавлю вышеупомянутое в команду запуска, она не откроется. Есть идеи?

Спасибо

0
задан 15 July 2013 в 10:57

2 ответа

Вы идете не так. / usr / share / Applications содержит файл запуска (файл конфигурации), а не исполняемый файл. Вы не можете запустить файл .desktop с помощью команды sudo. Вместо вас следует запустить исполняемый файл.

sudo /usr/share/applications/indicator-monitor

Почему это не работает? Не существует файла с именем индикатор-монитор, но есть индикатор-монитор.desktop.

cd /usr/share/applications && sudo indicator-monitor

Почему это работает? Ваша первая команда перейдет в папку приложений. Все нормально. Но следующая команда будет запускать индикатор-монитор (исполняемый файл из пути env), а не из текущего каталога. Текущий каталог нуждается в ./ префиксе.

Как найти, где находится исполняемый файл? выполните следующую команду с именем приложения

which indicator-monitor

. Извлеките путь env. Запустите следующую команду. echo $ PATH

Печатные каталоги доступны из любого места.

0
ответ дан 15 July 2013 в 10:57

Вы ничего не запускаете в /usr/share/applications/. cd 'in туда не делает его там из файла .desktop. Вместо этого он просто уходит от вас. Вы просто запускаете глобальный indicator-monitor из глобального PATH.

Не имеет значения, каков ваш текущий рабочий каталог. Просто

sudo indicator-monitor

в любом месте приведет к тому же.

И вы видите ошибку «команда не найдена», потому что нет такого файла, как /usr/share/applications/indicator-monitor. Запустите

ln -s /usr/share/applications/indicator-monitor

для проверки.

Файл .desktop предназначен для запуска из графического интерфейса, отображается в виде значка и запускается нажатием на него. Посмотрите содержимое файла, чтобы узнать, что на самом деле происходит (просто текстовый файл!).

0
ответ дан 15 July 2013 в 10:57

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

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