Я хотел бы убить Java-процесс на основе имени команды ... Как лучше всего это сделать?
(т.е. когда вы делаете ps -f
имя в CMD
столбец).
Простые, используйте pkill
pgrep, pkill - look up or signal processes based on name and other attributes
Один способ - с убить всех:
killall - kill processes by name
Вы можете сделать это с помощью killall NAME.
Также вы можете использовать опцию
-e,--exact require exact match for very long names
Если вам нужен быстрый сценарий, который убьет его в одну строку, попробуйте следующее:
kill `ps aux | awk '$1 ~ "java" {print $2}'`
Если "java" заключено в кавычки, убедитесь, что вы изменили его на то имя, под которым работает Java. Вы можете проверить это, запустив ps aux
Если он не умрет, вы можете использовать kill -9
вместо этого, что обеспечивает выполнение.
kill -9 `ps aux | awk '$1 ~ "java" {print $2}'`