Я хочу использовать некоторые приложения, показанные на Unity Launcher в терминале, но мне нужно знать соответствующую команду для их запуска. Как мне этого добиться?
У большинства приложений по умолчанию будет файл .desktop
, расположенный в / usr / share / applications
.
Чтобы узнать о соответствующей команде терминала, которая будет запускаться при запуске одного из этих приложений, откройте файловый браузер Nautilus и щелкните правой кнопкой мыши значок приложения, чтобы выбрать Свойства в контекстном меню. Это даст вам всю необходимую информацию (здесь показано для Системные настройки , которые будут запускать gnome-control-center -overview
)
Если вы установили приложение через репозитории или через dpkg
, вы можете использовать эту команду:
dpkg -l | grep "application name"
Это выполнит поиск по всем установленным вами приложениям, а также по их описаниям; поиск по описанию является здесь важной частью, потому что описание обычно содержит имя приложения, даже если «команда» для его запуска не содержит имени приложения.
В GNOME есть приложение под названием Disk Usage Analyzer . Однако команда для его запуска с терминала не является disk-usage-analyzer
. Чтобы узнать его команду, вы можете запустить:
dpkg -l | grep "disk usage"
Вывод должен содержать эту запись:
alaa@aa-lu:~$ dpkg -l | grep "disk usage"
ii baobab 3.6.4-0ubuntu1 i386 GNOME disk usage analyzer
Посмотрите на второй столбец. Команда для запуска анализатора использования диска - baobab
.
Что вы можете сделать, так это использовать xprop
: он позволит вам щелкнуть приложение и отобразить информацию. Чтобы получить имя, введите в терминале:
xprop | grep WM_CLASS
, если WM_CLASS
не работает, попробуйте использовать WM_COMMAND
.
Сначала откройте Synaptic, запустив synaptic
в терминале.Введите название приложения в поле быстрого фильтра. В качестве примера я буду использовать LibreOffice Writer
. Введите имя приложения в фильтр Synaptic:
Оно отображается как первый установленный результат (маленький зеленый прямоугольник) с полным именем пакета libreoffice-writer
в первом столбце.
Теперь попробуйте запустить libreoffice-writer
в терминале. Иногда пакет запускается, но в этом случае он не работает:
Теперь, если вы посмотрите на Synaptic, вы увидите, что самым первым результатом является пакет libreoffice
. Вы можете просто запустить libreoffice
в терминале, и в этом случае вы получите следующее окно:
Или вы можете ввести man libreoffice
в терминале. Если вы посмотрите на эти два снимка экрана:
Вы можете увидеть, что для прямого запуска LibreOffice Writer вы можете использовать одну из двух команд: lowriter
или libreoffice --writer
. Оба работают одинаково хорошо.
Некоторые программы или приложения просто выполняются двоичным кодом. По названию приложения одна
Можно просто взять /usr/sbin/gparted
- для запуска этого приложения, разбитого на иконки или имена приложений (как в cairo-dock
). (в этом случае для запуска gparted root-пароля необходимо).
xprop
позволяет найти PID запущенного окна, а ps
позволяет найти команду, соответствующую PID. Объединив их вместе, мы можем найти команду, соответствующую окну, например:
ps --no-headers -p $(xprop | awk -F '=' '/_NET_WM_PID/{print $2}') -o cmd
xprop
превратит ваш курсор в X
, который вы можете использовать, чтобы щелкнуть по окну. вернет PID, а затем ps
будет использовать этот PID для печати команды
Это слишком просто для гиков Linux.
Закройте приложение, если оно открыто.
Откройте приложение, щелкнув его значок.
Например, я щелкните значок Document Viewer.
Откройте терминал (ctl alt T) и запустите
ps -u `whoami` | tail -3
Ответ находится в первой строке вывода:
mac2011-linux% ps -u `whoami`|tail -3
51252 ? 00:00:01 evince
53209 pts/3 00:00:00 ps
53211 pts/3 00:00:00 tail
Да, Document Viewer очевиден, догадаться непросто.