编写一个能通过ssh到多台服务器上根据进程名称查找出进程的pid并执行此pid执行kill -9的shell脚本
以下是一个能够通过SSH连接到多台服务器,根据进程名称查找出进程的PID,并执行kill -9命令的shell脚本示例:
#!/bin/bash
# 进程名称
process_name="your_process_name"
# 服务器列表
servers=("server1" "server2" "server3")
for server in "${servers[@]}"
do
echo "Processing $server..."
# 使用ssh连接到服务器,并在远程服务器上执行命令
ssh user@$server "pid=\$(pgrep $process_name); if [[ -n \$pid ]]; then echo 'Killing process \$pid...'; kill -9 \$pid; else echo 'Process not found.'; fi"
echo "Done."
echo ""
done
请将"your_process_name"替换为你要查找和终止的进程的实际名称,并将"servers"列表替换为你的服务器列表。同时,将"user"替换为你的SSH用户名。
该脚本将依次连接到每个服务器,并在每台服务器上执行查找和终止进程的命令。如果找到进程,则会输出"Killing process [PID]...",然后终止该进程;如果未找到进程,则输出"Process not found."。
请确保你的SSH密钥已配置,以便无需输入密码即可连接到服务器。如果需要密码,请在脚本中添加密码输入的部分
原文地址: https://www.cveoy.top/t/topic/iiO5 著作权归作者所有。请勿转载和采集!