Como posso iniciar um processo com um nome diferente?

8

Basicamente, quero iniciar dinamicamente alguns processos que podem criar seus próprios processos filhos, mas também quero matar um determinado grupo de processos que acabei de criar sempre que quiser.

Uma maneira que eu poderia pensar é iniciar processos com um nome (para distinguir como um grupo), então use pkill para matá-los pelo nome.

A questão é como iniciar um processo com um nome para que eu possa usar pkill para eliminá-los pelo nome? Estou aberto a outras soluções também.

    
por cache 21.06.2012 / 02:54

2 respostas

8

Você pode usar o exec shell embutido:

bash -c "exec -a MyUniqueProcessName <command> &"

<command> substitui o shell atual, nenhum novo processo é criado, é por isso que estou iniciando um novo shell para chamar exec .

Então você pode matar o processo com:

pkill -f MyUniqueProcessName

Você pode iniciar mais de um processo com o mesmo nome e, em seguida, pkill -f <name> irá matar todos eles.

    
por Eric Carvalho 22.06.2013 / 21:24
0

AMItac / Agência Solaris

Eu tenho este caso com uma ferramenta de transcodificação de áudio. (correndo 3 vezes), mas tem apenas um nome.

Eu fiz o seguinte. Não vá para o diretório bin da ferramenta Shell e copie-o 3 vezes e forneça um novo nome. tc-1, tc-2, tc-3 (é uma pequena ferramenta para não comer muito Harddisc Space (com binários gordos você não deve usar as outras formas mencionadas)

para que o processo comece com um nome exclusivo e possa ser eliminado com esse nome exclusivo sem o perigo de matar outros processos de transcodificação que eu quero continuar.

outro truque pode funcionar ....

adicione um script #bash Name.sh, torne-o executável. Digite seus comandos lá e inicie o próprio script bash. No Centos, ele usa o nome do Bashscript que você executou e não o nome do bin em si.

Espero que algo ajude alguém lá fora.

    
por user814973 05.04.2018 / 09:00

Tags