Как найти PID для программного обеспечения, где имя программы отличается от исполняемого файла? [duplicate]

На этот вопрос уже есть ответ здесь:

Я запускаю программу "Videos" из Dash в Ubuntu. Через несколько минут программа зависает.

Я пробовал искать PID программы, чтобы убить ее, но не могу найти никакого результата с помощью этих команд:

pgrep Videos

ps -eo cmd,pid,stime

Я не знаю stime процесса.

Мне приходится перезагружать компьютер, и после входа в систему я вижу, что программа выполняется командой totem.

Как найти PID для программы, имя которой отличается от имени исполняемого файла?

2
задан 8 June 2016 в 04:03

2 ответа

При выполнении команды от терминала затем, команда будет всегда обнаруживаться в таблице процессов, являющейся процессом.

Ваш случай отличается, поскольку Вы выполнили Настольную запись (объявленный в a .desktop файл), то, имя которого и команду это выполняет, может полностью отличаться.

.desktop файлы используют формат INI для выражения метаданных.

Вот Настольная запись для htop:

[Desktop Entry]
Version=1.0
Name=Htop
Type=Application
Comment=Show System Processes
Terminal=true
Exec=htop
Icon=htop
Categories=ConsoleOnly;System;
GenericName=Process Viewer

В Вас случай, Name Videos и Exec строка укажет на фактическую выполняемую команду.


Необходимо разыскать .desktop файл и проверка запись для получения команды, на самом деле выполняемой.

Так позволяет, находят .desktop файл, который содержит Name=Videos:

% grep -RH '^Name=Videos$' ~/.local/share/applications /usr/share/applications
/usr/share/applications/totem.desktop:Name=Videos

Получил его!!

Это объявляется в /usr/share/applications/totem.desktop.

Теперь давайте проверим то, что управляет, чтобы это на самом деле работало:

% cat /usr/share/applications/totem.desktop
[Desktop Entry]
Name=Videos
Comment=Play movies
Keywords=Video;Movie;Film;Clip;Series;Player;DVD;TV;Disc;
Exec=totem %U
Icon=totem
Terminal=false
Type=Application
.
.
<truncated>

Как Вы видите, Exec ключ говорит totem %U. %U указывает на список URIs.


Теперь, если Вы делаете:

pgrep totem

Вы получили бы PID totem экземпляр.

4
ответ дан 8 June 2016 в 04:03

Видеоплеер по умолчанию Ubuntu totem, поэтому если Вы хотите найти PID из Видеоплеера, необходимо найти эти totem процесс. Можно сделать как это:

ps aux | grep totem, затем можно уничтожить PID из totem.
И можно получить информацию в SoundVideoDefault

0
ответ дан 8 June 2016 в 04:03

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

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