#!/bin/bash ARTHAS_FILE="arthas-boot.jar"# 检查 arthas-boot.jar 文件是否存在 if [ ! -f "$ARTHAS_FILE" ]; thenecho "错误:未找到 arthas-boot.jar 文件,请确保该文件在当前目录中。"exit 1 fi# 获取当前正在运行的 Java 进程 echo "检测正在运行的 Java 进程..." JAVA_PIDS=$(jps -l | grep -v Jps)if [ -z "$JAVA_PIDS" ]; thenecho "没有发现运行中的 Java 进程。"exit 1 fiecho "找到以下 Java 进程:" echo "$JAVA_PIDS"# 选择要附加的进程 ID read -p "请输入要附加的进程 ID: " TARGET_PID# 验证输入是否为有效的 PID if ! echo "$JAVA_PIDS" | grep -q "^$TARGET_PID"; thenecho "无效的进程 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 3658echo "Arthas 已启动并显示 dashboard。"