Я хочу завершить процесс, найдя идентификатор за один шаг.
В настоящее время я использую эти две команды:
pidof <name>
kill <#number_which_is_result_of_command>
Как мне написать одну команду, чтобы сделать это?
решение1
Вы также можете завершать процессы по имени:
Пример:
pkill vim # kill all processes containing vim in the process name
решение2
Чтобы ответить на ваш конкретный вопрос с помощью вашего набора команд, используйте:
kill `pidof <name>`
Так как pidof <name>
вы получаете PID процесса, который вы пытаетесь завершить, вы можете использовать его с параметрами командной строки, такими как -9
и т. д.
Протестировано с bash
и tcsh
.
решение3
Нужно было бы прокомментировать слова Левона, но у меня нет здесь репутации, чтобы сделать это:
Продолжая обсуждение принятого ответа на этот вопрос:https://serverfault.com/questions/397762/how-to-make-folders-00-99-with-a-single-command-in-ubuntu
Я бы сказал, что было бы предпочтительнее (или, по крайней мере, полезнее/понятнее для последующих поисковиков) запустить
kill $(pidof <name>)
Дополнительная информация о $() и ``:http://mywiki.wooledge.org/BashFAQ/082
решение4
Вы также можете использовать killall
команду, чтобы завершить определенный процесс.
killall vim