#!/bin/bash
echo "start script ......................"
ps_java=`ps aux | grep "java -jar" | grep -v "grep"`
printf "%-80s %-15s %-15s \n" package pid port
echo "$ps_java" | while read line
do
java_package=`echo $line | sed 's/.* \(.*\.[w|j]ar\).*/\1/g'`
java_pid=`echo $line | awk '{print $2}'`
java_dir=`ls -al /proc/$java_pid | grep cwd | awk '{print $4}'`
java_port=`netstat -antp | grep $java_pid | grep LISTEN | awk '{print $4}'`
java_package=$java_dir/$java_package
printf "%-80s %-15s %-15s \n" $java_package $java_pid $java_port
done
ps_java是找到的java -jar *.jar 运行的springboot项目
java_package是运行命令的jar包名
java_pid是进程号
java_prot是端口号
“$ps_java”是为了输出换行
printf是格式化