副标题#e#
ps 是进程状态processes status,它显示有关系统上活动/正在运行的进程的信息。
它提供了当前进程的快照以及详细信息,例如用户名、用户 ID、CPU 使用率、内存使用率、进程开始日期和时间等。
1)检查高 CPU 消耗进程在 Linux 上运行了多长时间的 Bash 脚本
该脚本将帮助你确定高 CPU 消耗进程在 Linux 上运行了多长时间。
#vi/opt/scripts/long-running-cpu-proc.sh
#!/bin/bash
ps-eo pid,user,ppid,%mem,%cpu,cmd –sort=-%cpu |head|tail-n +2| awk '{print $1}'>/tmp/long-running-processes.txt
echo"————————————————–"
echo"UName PID CMD Process_Running_Time"
echo"————————————————–"
for userid in`cat /tmp/long-running-processes.txt`
do
username=$(ps-u -p $userid |tail-1| awk '{print $1}')
pruntime=$(ps-p $userid -o etime |tail-1)
ocmd=$(ps-p $userid |tail-1| awk '{print $4}')
echo"$username $userid $ocmd $pruntime"
done| column -t
echo"————————————————–"
给 long-running-cpu-proc.sh 设置可执行的 Linux 文件权限。
#chmod+x /opt/scripts/long-running-cpu-proc.sh
运行此脚本时,你将获得类似以下的输出:
# sh /opt/scripts/long-running-cpu-proc.sh
—————————————————-
UName PID CMD Process_Running_Time
—————————————————-
daygeek 5214Web01:18:48
daygeek 5748Web01:08:20
daygeek 8043 inkscape 22:11
daygeek 5269Web01:18:31
daygeek 1712Web10:44:50
daygeek 5335 RDD 01:17:54
daygeek 1639 firefox 10:44:51
daygeek 7793 nautilus 24:14
daygeek 6301Web57:40
—————————————————-
2)检查高内存消耗进程在 Linux 上运行了多长时间的 Bash 脚本
该脚本将帮助你确定最大的内存消耗进程在 Linux 上运行了多长时间。
#p#副标题#e#
# sh /opt/scripts/long-running-memory-proc.sh
#!/bin/bash
ps-eo pid,user,ppid,%mem,%cpu,cmd –sort=-%mem |head|tail-n +2| awk '{print $1}'>/tmp/long-running-processes-1.txt
echo"————————————————–"
echo"UName PID CMD Process_Running_Time"
echo"————————————————–"
for userid in`cat /tmp/long-running-processes-1.txt`
do
username=$(ps-u -p $userid |tail-1| awk '{print $1}')
pruntime=$(ps-p $userid -o etime |tail-1)
ocmd=$(ps-p $userid |tail-1| awk '{print $4}')
echo"$username $userid $ocmd $pruntime"
done| column -t
echo"————————————————–"
给 long-running-memory-proc.sh 设置可执行的 Linux 文件权限。
#chmod+x /opt/scripts/long-running-memory-proc.sh
运行此脚本时,你将获得类似以下的输出:
# sh /opt/scripts/long-running-memory-proc.sh
—————————————————-
UName PID CMD Process_Running_Time
—————————————————-
daygeek 1639 firefox 10:44:56
daygeek 2997Web10:39:54
daygeek 5269Web01:18:37
daygeek 1712Web10:44:55
daygeek 8043 inkscape 22:17
daygeek 5214Web01:18:54
daygeek 1898Web10:44:48
daygeek 1129Xorg10:45:07
daygeek 6301Web57:45
—————————————————-