Como posso encontrar o PID para o software em que o nome do software é diferente do executável? [duplicado]

2

Eu rodei o software "Videos" do Dash no Ubuntu. Após alguns minutos, o software congela.

Eu tentei procurar pelo PID do software para eliminá-lo, mas não consigo encontrar nenhum resultado com esses comandos:

pgrep Videos

ps -eo cmd,pid,stime

Eu não sei o stime do processo.

Eu tenho que reiniciar meu computador e depois do login, vejo que o software é executado pelo comando totem .

Como posso encontrar o PID para software em que o nome do software é diferente daquele do arquivo executável?

    
por hassan panahi 07.06.2016 / 06:28

2 respostas

4

Se você executar um comando a partir do terminal, o comando sempre será exibido na tabela de processos, sendo um processo.

O seu caso é diferente já que você executou uma entrada na Área de Trabalho (declarada em um arquivo .desktop ), cujo nome e o comando que ela executa podem ser totalmente diferentes.

Os arquivos .desktop usam um formato INI para expressar metadados.

Aqui está a entrada da área de trabalho para 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

No seu caso, a linha Name é Videos e a Exec indicará o comando real executado.

Você deve rastrear o arquivo .desktop e verificar a entrada para obter o comando realmente sendo executado.

Então, vamos encontrar o arquivo .desktop que contém Name=Videos :

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

Entendi !!

É declarado em /usr/share/applications/totem.desktop .

Agora vamos verificar qual comando ele realmente executa:

% 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>

Como você pode ver, a tecla Exec diz totem %U . %U indica uma lista de URIs.

Agora, se você fizer isso:

pgrep totem

você obteria o PID da instância totem .

    
por heemayl 07.06.2016 / 06:55
0

O player de vídeo padrão de Ubuntu é totem , portanto, se você quiser encontrar o PID do player de vídeo, deverá encontrar o processo totem . Você pode fazer assim:

ps aux | grep totem , então você pode matar o PID de totem .
E você pode obter as informações em SoundVideoDefault

    
por zhenguoli 07.06.2016 / 06:43