python ssh arthas

#!/bin/bash

ARTHAS_FILE="arthas-boot.jar"

# 检查 arthas-boot.jar 文件是否存在
if [ ! -f "$ARTHAS_FILE" ]; then
    echo "错误:未找到 arthas-boot.jar 文件,请确保该文件在当前目录中。"
    exit 1
fi

# 获取当前正在运行的 Java 进程
echo "检测正在运行的 Java 进程..."
JAVA_PIDS=$(jps -l | grep -v Jps)

if [ -z "$JAVA_PIDS" ]; then
    echo "没有发现运行中的 Java 进程。"
    exit 1
fi

echo "找到以下 Java 进程:"
echo "$JAVA_PIDS"

# 选择要附加的进程 ID
read -p "请输入要附加的进程 ID: " TARGET_PID

# 验证输入是否为有效的 PID
if ! echo "$JAVA_PIDS" | grep -q "^$TARGET_PID"; then
    echo "无效的进程 ID:$TARGET_PID"
    exit 1
fi

# 启动 Arthas 并附加到指定的进程
echo "启动 Arthas 并附加到进程 ID $TARGET_PID..."
java -jar $ARTHAS_FILE --target-ip 127.0.0.1 --telnet-port 3658 --http-port 8563 $TARGET_PID &

# 等待 Arthas 启动
sleep 3

# 调用 dashboard 输出系统详情
echo "显示 dashboard 系统详情..."
echo "dashboard" | nc 127.0.0.1 3658

echo "Arthas 已启动并显示 dashboard。"

 

posted @ 2024-09-23 10:57  逍遥无名  阅读(7)  评论(0编辑  收藏  举报