本地根据服务名称kill
ps -ef | grep ycloans | grep -v grep | awk '{print $2}' | xargs kill
根据端口号kill
kill -9 $(lsof -i:9051|awk '{print $2}')
远程根据服务名称kill,需拆解
#远程服务进程
ssh username@host "ps -ef | grep ycloans | grep -v grep | awk '{print $2}'"
#远程查询PID 并只显示进程号
pid=$(ssh username@host "ps -ef | grep ycloans | grep -v grep | awk '{print $2}'"| awk '{print $2}')
echo $pid
#只能kill 掉一个进程
ssh username@host "kill -9 ${pid}"
解析
-
ps -ef 指令用来查询所有进程
-
grep通过管道来过滤
-
grep -v 是反向查询的意思,grep -v grep的作用是除去包含grep的项。
-
awk '{print $2}' 以空格作为分隔符,打印第二个字段