gpt4 book ai didi

linux - 运行超过 x 分钟的进程的 Grep 计数

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:11:40 27 4
gpt4 key购买 nike

我的目标是在 bash 中 grep 以获取早于“x”分钟的进程数。

到目前为止,我可以对所有进程执行时间进行 grep:

ps -eo etime,cmd | grep mysuperspecialprocess.sh | grep -Ev 'grep' | awk '{print $1}'

我通过管道传输 wc -l 以在最后获得计数。

我如何 grep 或循环遍历结果以将其限制为超过特定分钟数的进程?

最佳答案

试试这个经过测试的版本。

它搜索一个指定的正在运行的进程,并计算所有相关运行时间大于指定秒数的事件。

先设置参数值再运行。

$ cat ./script.sh 
#!/bin/bash --

process_name=mysuperspecialprocess.sh

elapsed_time_seconds=600

ps -eo etimes,cmd | fgrep "${process_name}" | fgrep -v fgrep | ( count=0 ; while read etimes cmd ; do \
if [ $etimes -gt $elapsed_time_seconds ] ;\
then \
count=$((count+1)) ;\
fi ;\
done ; echo $count )

etimes 指示 ps 显示秒。

关于linux - 运行超过 x 分钟的进程的 Grep 计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35873018/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com