Solução:
A primeira vista parece complicado, mas vou explicar detalhadamente.
- Filtre os processos.
No exemplo filtrei tudo o que tivesse a palavra sh
#ps ax | grep shisto continuou me dando problemas, pois apareciam processos que eu não queria matar, então eu fiz um novo filtro removendo o que eu não quero matar, que são os que tem a palavra total
#ps ax | grep sh | grep -v total - Filtre apenas o número do processo
Para retirar o número do processo utilizei o comando cut delimitando pelo ponto de interrogação.
cut -f1 -d '?'Ficou assim:
#ps ax | grep sh | grep -v total | cut -f1 -d '?' - Crie um loop baseado na saída do número dos processos
Um loop na linha de comando é algo simples, veja um exemplo claro.
for i in {1..10}; do command; done
Portanto colocando os processos filtrados fica assim:
#for i in $(ps ax | grep sh | grep -v total | cut -f1 -d '?'); do echo $i; done - Insira o comando para matar os processos do loop.
Neste caso utilizei o comando kill com a opção de prioridade -9
#for i in $(ps ax | grep sh | grep -v total | cut -f1 -d '?'); do kill -9 $i; done
Nenhum comentário:
Postar um comentário