话不多说,直接上代码,java可以直接复制,如果是已知道pid或者固定线程,那就直接改pid的值就行。
#!/bin/bashpid=$(ps aux | grep 'java -jar 项目运行路径和名称.jar' | grep -v grep | awk '{print $2}') # 传入的jar是你java项目的运行路径if [ -z "$pid" ]; then echo "Java进程不存在,脚本将尝试启动它。" exit 0firss_kb=$(cat /proc/$pid/status | grep VmRSS | awk '{print $2}')echo "PID $pid RSS (KB): $rss_kb"MEMORY_THRESHOLD=700000 #kb算法,自己乘以1024等于mbif [ $rss_kb -gt $MEMORY_THRESHOLD ]; then echo "内存超出阈值,正在重启Java进程。"fi#这里记得末尾是换行