Que tal agora -
ps -e | awk '$4~/<process name>/{print $1}' | xargs kill
Exemplo:
[jaypal:~/Temp] sleep 100&
[1] 74863
[jaypal:~/Temp] ps -e | awk '$4~/sleep/{print $1}' | xargs kill
[1]+ Terminated: 15 sleep 100
Atualizar:
Desculpe, obviamente, isso não atende ao requisito de menos digitação, portanto, uma boa maneira de fazer isso seria adicionar um function
ao seu .bashrc
, .profile
ou qualquer que seja o script de inicialização. A função pode ser algo como isto -
killp() {
awk -v pname="$1" '($4==pname){print $1}' <(ps -e) | xargs kill
}
Depois de adicionado, você pode simplesmente passar o nome do seu processo:
[jaypal:~] sleep 100&
[1] 77212
[jaypal:~] killp sleep
[1]+ Terminated: 15 sleep 100