- 根据内存百分比杀死特定进程
#!/bin/bash # 获取当前空闲内存百分比 free_mem_percent=$(free | awk '/Mem/{printf "%.2f", $4/$2 * 100}') # 定义阈值 threshold=10 # 判断空闲内存是否低于阈值 if [ $(echo "$free_mem_percent < $threshold" | bc -l) -eq 1 ]; then # 获取perseus7进程的PID perseus_pid=$(pgrep perseus7) # 检查是否有perseus7进程在运行 if [ -n "$perseus_pid" ]; then # 杀死perseus7进程 kill -9 $perseus_pid echo "perseus7进程已被杀死" else echo "没有运行中的perseus7进程" fi else echo "空闲内存未低于$threshold%,无需执行操作" fi - 根据内存百分比杀死占用内存最高的进程
#!/bin/bash # 获取剩余内存百分比 free_percent=$(free | awk '/Mem/{printf "%.2f", $4/$2 * 100}') echo "当前剩余内存百分比: $free_percent%" # 定义阈值 threshold=10 # 如果剩余内存百分比低于阈值,则进行相应操作 if (( $(echo "$free_percent < $threshold" | bc -l) )); then echo "空闲内存低于10%,尝试杀死占用内存最高的进程..." # 获取占用内存最高的进程ID highest_mem_pid=$(ps axo pid,%mem --sort=-%mem | awk 'NR==2 {print $1}') if [ -n "$highest_mem_pid" ]; then echo "杀死进程 $highest_mem_pid" kill -9 "$highest_mem_pid" echo "进程 $highest_mem_pid 已被杀死" else echo "没有找到占用内存最高的进程" fi else echo "剩余内存充足,无需进行操作" fi
- 根据内存百分比杀死特定进程
分类: 发行通用
0 条评论