Como posso verificar o PID de um X-server em outro terminal virtual?

0

Estou tentando abrir um programa em um servidor X nu em um terminal virtual diferente. Estou usando o ubuntu 9.10.

O comando que estou usando é este.

openvt -f -s -- 'X :2 & '/path/to/program' -display :2';

Agora, quando o programa é desligado, eu quero que o servidor X seja morto também.

Então, minha pergunta é: como posso salvar o PID do novo X-server (X: 2) para depois eliminá-lo?

Ele será usado em um script de shell normal.

    
por user19489 26.11.2009 / 20:14

3 respostas

1

Em vez de usar o openvt, você pode usar o Xephyr para abrir uma sessão X aninhada. Isso tornaria mais fácil gerenciá-lo depois.

Use sudo apt-get install xserver-xephyr para instalá-lo.

Junte isso usando $! para pegar o ID do processo, como James sugeriu.

    
por 28.12.2009 / 12:21
1

No bash, $! é the process ID of the most recently executed back-ground (asynchronous) command .

Sombrero:Documents polleyj$ xterm &
[1] 41316
Sombrero:Documents polleyj$ KILLPID=$!
Sombrero:Documents polleyj$ echo $KILLPID
41316
Sombrero:Documents polleyj$ kill $KILLPID
Sombrero:Documents polleyj$
[1]+  Killed                  xterm
Sombrero:Documents polleyj$
    
por 28.12.2009 / 12:18
0

O que eu fiz foi armazenar pgrep -f 'X: 2' em uma variável mypid. Então eu simplesmente matei $ mypid ..

    
por 27.11.2009 / 21:11