【发布时间】:2017-02-06 07:16:36
【问题描述】:
读取来自每个服务器的进程 grep pipe 命令的 PID 并杀死它。 当我运行以下 sn-p - 它为其余服务器显示与第一台主机相同的 ID。换句话说,它不会更新新的 PIDs
for h in host1 host2 host3
do
if [ $(hostname -s) = $h ]; then
PID=$(echo "`ps -ef | grep x_user | grep x_project | grep JMX_SCRIPT.PID=webservice | grep '/bin/bash' | awk '{print $2;}'`")
else
PID=$(ssh $h "echo \"`ps -ef | grep x_user | grep x_project | grep JMX_SCRIPT.PID=webservice | grep '/bin/bash' | awk '{print $2;}'`\"")
fi
echo "Killing pid - $PID... on $h"
sleep 5
done
输出如下:
Killing pid - 18334... on host_1
Killing pid - 18334... on host_2
Killing pid - 18334... on host_3
专家 - 我在这里做错了什么?提前感谢您的帮助。
【问题讨论】:
-
你使用的是 Linux 系统吗?