подключитесь по ssh к машине и найдите процесс, завершите его с помощью xargs

подключитесь по ssh к машине и найдите процесс, завершите его с помощью xargs

Я делаю это,

[email protected] ~> ssh <machine> jps | gawk '$2 == "<process>" {print $1}' | xargs kill
kill: sending signal to 75797 failed: No such process
[email protected] ~> echo $?
123

Но работает ли это, если я скажу так?

ssh <machine> "jps | gawk '\$2 == \"<process>\" {print \$1}' | xargs kill "

Почему это так ?

решение1

Вторая версия команды отправляет всю команду (в " .... ") на сервер для выполнения там, первая версия отправляет jpsна сервер только первую часть, а затем выполняет остальную часть команды, используя вывод на локальной машине.

Связанный контент