linuxsort(如何用脚本一键获取和监控Linux系统信息和资源使用率)

1. linuxsort,如何用脚本一键获取和监控Linux系统信息和资源使用率?

很高兴回答您的问题我是林创云小编,如果我的回答对你有帮助欢迎给我评论留言或者点赞加个关注!

1、利用vmstat工具监控CPU详细信息,然后基于/proc/stat计算CPU利用率进行监控,超过80报警并提取出占用cpu最高的前十进程。

vmstat是Linux系统监控工具,使用vmstat命令可以得到关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息。

r:运行队列中的进程数;b:等待IO的进程数。

swpd:已用虚拟内存大小(k);free:空闲内存大小;buff:已用缓冲大小;cache:已用缓存大小。

si:每秒从交换区写入内存的大小(kb/s);so:每秒从内存写入交换分区的大小。

bi:每秒读取的块数;bo每秒写入的块数。

in:每秒中断数,包括时钟中断;cs:每秒上下文切换数。

us(user time):用户进程执行消耗cpu时间;sy(system time):系统进程执行消耗cpu时间;id:空闲时间(包括IO等待时间);wa:等待IO时间。

/proc/stat:

这个文件包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累计到当前时刻。可以利用其中信息计算cpu的利用率。

每行每个参数的意思为(以第一行为例,单位:jiffies,1jiffies=0.01秒):

user(62124):从系统启动开始累计到当前时刻,用户态的CPU时间,不包含 nice值为负进程。

nice(11):从系统启动开始累计到当前时刻。

system(47890):从系统启动开始累计到当前时刻,nice值为负的进程所占用的CPU时间。

idle(8715270):从系统启动开始累计到当前时刻,除硬盘IO等待时间以外其它等待时间。

iowait(84729):从系统启动开始累计到当前时刻,硬盘IO等待时间。

irq(0):从系统启动开始累计到当前时刻,硬中断时间。

softirq(1483):从系统启动开始累计到当前时刻,软中断时间。

CPU时间=user+nice+system+idle+iowait+irq+softirq。

CPU利用率=(idle2-idle1)/(cpu2-cpu1)*100。

ps aux:

显示其他用户启动的进程(a)

查看系统中属于自己的进程(x)

启动这个进程的用户和启动时间 (u)

代码如下:

#!/bin/bash

#

CPU_us=$(vmstat | awk '{print $13}' | sed -n '$p')

CPU_sy=$(vmstat | awk '{print $14}' | sed -n '$p')

CPU_id=$(vmstat | awk '{print $15}' | sed -n '$p')

CPU_wa=$(vmstat | awk '{print $16}' | sed -n '$p')

CPU_st=$(vmstat | awk '{print $17}' | sed -n '$p')

CPU1=`cat /proc/stat | grep 'cpu ' | awk '{print $2" "$3" "$4" "$5" "$6" "$7" "$8}'`

sleep 5

CPU2=`cat /proc/stat | grep 'cpu ' | awk '{print $2" "$3" "$4" "$5" "$6" "$7" "$8}'`

IDLE1=`echo $CPU1 | awk '{print $4}'`

IDLE2=`echo $CPU2 | awk '{print $4}'`

CPU1_TOTAL=`echo $CPU1 | awk '{print $1+$2+$3+$4+$5+$6+$7}'`

CPU2_TOTAL=`echo $CPU2 | awk '{print $1+$2+$3+$4+$5+$6+$7}'`

IDLE=`echo "$IDLE2-$IDLE1" | bc`

CPU_TOTAL=`echo "$CPU2_TOTAL-$CPU1_TOTAL" | bc`

#echo -e "IDLE2:$IDLE2\nIDLE1:$IDLE1\nCPU2:$CPU2_TOTAL\nCPU1:$CPU1_TOTAL"

#echo -e "IDLE:$IDLE\nCPU:$CPU_TOTAL"

RATE=`echo "scale=4;($CPU_TOTAL-$IDLE)/$CPU_TOTAL*100" | bc | awk '{printf "%.2f",$1}'`

echo -e "us=$CPU_us\tsy=$CPU_sy\tid=$CPU_id\twa=$CPU_wa\tst=$CPU_st"

echo "CPU_RATE:${RATE}%"

CPU_RATE=`echo $RATE | cut -d. -f1`

#echo "CPU_RATE:$CPU_RATE"

if [ $CPU_RATE -ge 80 ]

then echo "CPU Warn"

ps aux | grep -v USER | sort -rn -k3 | head

fi

执行效果

2、利用free工具监控内存利用率,超过80报警并提取出占用内存最高的前十进程。

代码如下:

#!/bin/bash

#

total=$(free -m | sed -n '2p' | awk '{print $2}')

used=$(free -m | sed -n '2p' | awk '{print $3}')

free=$(free -m | sed -n '2p' | awk '{print $4}')

shared=$(free -m | sed -n '2p' | awk '{print $5}')

buff=$(free -m | sed -n '2p' | awk '{print $6}')

cached=$(free -m | sed -n '2p' | awk '{print $7}')

rate=`echo "scale=2;$used/$total" | bc | awk -F. '{print $2}'`

echo -e "total\tused\tfree\tshared\tbuffer\tavailable"

echo -e "${total}M\t${used}M\t${free}M\t${shared}M\t${buff}M\t${cached}M\nrate:${rate}%"

if [ $rate -ge 80 ]

then echo "Memory Warn"

ps aux | grep -v USER | sort -rn -k4 | head

fi

执行效果

3、利用df命令监控磁盘利用率,超过80报警。

df :显示磁盘分区上的可使用的磁盘空间。

-h 以更易读的方式显示;

-P 使用POSIX的输出格式。

#!/bin/bash

#

DEV=`df -hP | grep '^/dev/*' | cut -d' ' -f1 | sort`

for I in $DEV

do dev=`df -Ph | grep $I | awk '{print $1}'`

size=`df -Ph | grep $I | awk '{print $2}'`

used=`df -Ph | grep $I | awk '{print $3}'`

free=`df -Ph | grep $I | awk '{print $4}'`

rate=`df -Ph | grep $I | awk '{print $5}'`

mount=`df -Ph | grep $I | awk '{print $6}'`

echo -e "$I:\tsize:$size\tused:$used\tfree:$free\trate:$rate\tmount:$mount"

F=`echo $rate | awk -F% '{print $1}'`

if [ $F -ge 80 ];then

echo "$mount Warn"

else echo "It's OK"

fi

done

执行效果

CPU物理信息

查看物理cpu个数:

cat /proc/cpuinfo | grep "physical id" | uniq | wc -l

查看cpu核数:

cat /proc/cpuinfo | grep "cpu cores" | uniq

查看逻辑cpu个数:

cat /proc/cpuinfo | grep "processor" | wc -l

linuxsort(如何用脚本一键获取和监控Linux系统信息和资源使用率)

2. wps里面没有sortby函数?

有啊你没找到吗 DP: 生活的脚步,技术的点滴...  sort命令用法  sort是在Linux里非常常用的一个命令,

3. linux查看cpu个数命令?

我的回答:Linux查看cpu个数,可以分成几种信息:

1.查看CPU型号

cat /proc/cpuinfo|grep "model name"|uniq

比如Intel Xeon CPU E5-2690 v4 代表英特尔至强处理器。

2.查看CPU物理个数:

cat /proc/cpuinfo|grep "physical id"|sort|uniq|wc -l

比如2 就代表两颗物理CPU。

3.查看单个CPU的物理核数:

cat /proc/cpuinfo|grep "cpu cores"|uniq

比如14

就代表一颗物理CPU有14核

查看单颗CPU的逻辑核数:

cat /proc/cpuinfo|grep "siblings"|uniq

比如是28

如果siblings的数量是cpu cores的两倍,证明CPU支持超线程并且开启了超线程技术。

4.查看CPU总的逻辑核数:

cat /proc/cpuinfo|grep "processor"|wc -l

比如56

就代表总的逻辑核心数56。

4. linux里过滤内容的命令?

在Linux中,有多种命令可以用来过滤内容。以下是一些常用的过滤命令:

grep:用于在文件或标准输入中搜索匹配指定模式的行。

示例:grep "pattern" file.txt

awk:用于处理文本文件的工具,可以根据指定的规则对文件进行分析和处理。

示例:awk '/pattern/ {print $0}' file.txt

sed:用于对文本进行流式编辑,可以根据指定的规则对文本进行替换、删除等操作。

示例:sed 's/pattern/replacement/g' file.txt

cut:用于从文件或标准输入中提取指定字段。

示例:cut -d',' -f1 file.txt

sort:用于对文本进行排序。

示例:sort file.txt

uniq:用于去除重复的行。

示例:uniq file.txt

head:用于显示文件的前几行,默认为前10行。

示例:head -n 5 file.txt

tail:用于显示文件的后几行,默认为后10行。

示例:tail -n 5 file.txt

这些命令可以根据您的需求和具体情况进行组合使用,以实现更复杂的内容过滤和处理操作。请注意,以上示例中的"pattern"和"file.txt"需要根据实际情况进行替换

5. linux怎么进入黑色命令行?

我的回答:可以按Ctrl+alt+F2~6

就可以进入命令行模式的黑色界面了。

这个黑色的命令行是Linux的终端,可以输入各种Linux的终端命令。

比较常用的是ls pwd ps awk sed grep tar egrep sort uniq chmod chown find kill crontab at cat more head tail 等命令。

6. linux中的双竖线什么意思?

管道符号,是unix一个很强大的功能,符号为一条竖线:"|"。用法: command

1 | command

2 他的功能是把第一个命令command 1执行的结果作为command 2的输入传给command 2,例如:$ls -s|sort -nr (请注意不要复制$符号进去哦)-s 是file size,-n是numeric-sort,-r是reverse,反转该命令列出当前目录中的文档(含size),并把输出送给sort命令作为输入,sort命令按数字递减的顺序把ls的输出排序。$ls -s|sort -n按从小到大的顺序输出。当然还可进行多次操作,如下面的功能为先去除纯数字,再由sed将竖线(这里不是管道符号)替换为空格,再将结果取出来排序,再进行结果的选择显示,不明白可查看 排序和分页。cat filename |grep -v '^[0-9]*$' | sed 's/|/ /g' |sort -nrk 8 -nrk 9 |tail -n +1 |head -n 10

7. linux系统通过命令行查看cpu信息?

1、首先我们介绍lscpu命令,该条命令可以查看 CPU 和处理单元的信息。没有其他的功能。下面我们执行命令"lscpu",具体输出信息如下图所示。

2、然后我们介绍第2种方式,通过读取/proc/cpuinfo文件进行查看。输入命令"cat /proc/cpuinfo",然后回车,查看cpu整体信息。具体结果如下图所示。

3、当然我们也可以针对某些指标进行查看,比如想查看查看物理CPU个数,我们可以通过命令"cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l"。具体操作如下图所示。

4、假如我们想要查看每个物理CPU中core的个数(即核数),我们可以输入命令"cat /proc/cpuinfo| grep "cpu cores"| uniq"进行查看,具体操作如下图所示。

5、假如我们想要查看逻辑CPU的个数,可以输入命令"cat /proc/cpuinfo| grep "processor"| wc -l"进行查看,具体操作如下图所示。

6、假如我们想要查看cpu的型号,可以输入命令"cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c"进行查看,具体操作如下图所示。

免责声明:本文作者:“游客”,版权归作者所有,观点仅代表作者本人。本站仅提供信息存储分享服务,不拥有所有权。信息贵在分享,如有侵权请联系ynstorm@foxmail.com,我们将在24小时内对侵权内容进行删除。
(151)
z710e刷机(创维42e710u强制刷
上一篇 2023年11月15日
北桥芯片(主板上的南桥芯片和北桥芯片是干
下一篇 2023年11月15日

相关推荐

  • 家用电脑系统(windows家庭版好用吗)

    windows家庭版好用的,使用起来很流畅,普通个人用户,平常只是玩游戏、上上网、看看片,推荐升级Win10的家庭普通版,功能刚好,充分节省自己电脑资源。...

    2023年10月30日
  • mtk手机网(联发科p70好还是骁龙680好)

    毕竟后者采用的是台积电七纳米的资格成功,而联发科p七零采用的是台积电12纳米的制造工艺,后者的制造工艺更加先进,而且他的性能也要比前者更加强大,它的功耗也就是比前者更加低一些。...

    2023年10月31日
  • 手机格式化内存卡(手机储存卡格式化时分配单元大小和系统如何选择比较好)

    分配单元,旧称簇。就是操作系统为每一个单元地址划分的空间大小.就比如说一栋楼,将它划分为若干个房间,每个房间的大小一样,同时给每个房间一个房间号.这时,每个房间的大小,就是分配单元.在建立分区时,会出现分配单元大小的选项。每个分配单元只能存放...

    2023年11月08日
  • 网页源文件(QQ浏览器怎么查看网页源代码)

    QQ浏览器现在可以查看源代码了,在QQ浏览器6.7及以上版本中,右键网页选择“查看源代码"就可以了~...

    2023年11月14日
  • 热点wifi(怎么关闭热点自动连接)

    下一步我们在进入到无线网的设置界面之后,可以看到其中有一个自动加入热点的操作选项,然后点击它准备进行更改设置。...

    2023年11月19日
  • nike kyrie flytrap 3(欧文支线flytrap4如何清洗)

    1.可以使用牙膏来擦拭鞋子,用牙刷蘸取少量牙膏,在鞋子脏的地方反复刷几遍即可刷掉污渍,但是需要注意动作要轻柔,避免将鞋子表面擦破。...

    2023年11月19日
  • 华为畅享20plus(华为畅享20plus怎么关闭hd)

    手机屏幕状态栏显示HD图标,说明手机开启了VoLTE高清语音功能,不需要可以进行关闭,华为畅享20plus手机关闭方法如下:...

    2023年11月20日
  • 开机自动宽带连接(电脑开机时怎么关闭自动联网)

    台式机和笔记本在网线连接情况下,在宽带连接界面输入用户名和密码后,不要勾选记住密码选项笔记本在WiFi连接时,输入用户名和密码后,不勾选记住密码选项无线路由器设置密码,让电脑通过输入用户名和密码才能上网...

    2023年11月22日
  • 新世界电讯(世界首富贝索斯身价9000亿)

    2019年2月26日胡润研究院发布了《2019胡润全球富豪榜》,全球财富超过十亿美金的富豪共有2470名。其中,亚马逊CEO杰夫·贝佐斯以9900亿人民币蝉联世界首富,而马云则以2600亿元的个人财富成为全球华人首富!近万亿人民币,富可敌国啊...

    2023年11月29日
  • kb3035583下载(右下角图标无法撤除)

    近日,微软向全球的Win7、Win8用户推送了Win10免费升级的提示,用户电脑的右下角会出现一个提示图标。这个图标会一直在任务栏右下角,且无法关闭,让很多人感到不爽。下面就介绍一个方法,用来关闭这个任务栏右下角的推送图标。1、打开电脑控制面...

    2023年12月02日
返回顶部