以下是一个能够通过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密钥已配置,以便无需输入密码即可连接到服务器。如果需要密码,请在脚本中添加密码输入的部分

编写一个能通过ssh到多台服务器上根据进程名称查找出进程的pid并执行此pid执行kill -9的shell脚本

原文地址: https://www.cveoy.top/t/topic/iiO5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录