我正在使用linux"顶部";命令以批处理模式使用python脚本收集性能指标,如CPU%、内存%。
我试着通过
top-b-n1-w512
但由于我的系统有2个CPU核心,上面的顶部命令是将两个CPU核心的CPU%相加,有时会返回超过100%的CPU%。
我读过关于Irix模式和Solaris模式的文章,以及我们如何使用Shift+I在这些模式之间切换。
但我正在寻找一种方法,使用脚本在Solaris模式(即Irix模式关闭(下直接捕获顶级命令指标,以便可以获得平均CPU%。
平台:CentOS Linux 7(核心(
我找到了一个解决方案,可以在"top"命令中关闭"Irix mode",以便在批处理模式下捕获平均CPU使用率。在运行python脚本之前,请使用以下步骤更改顶部配置:
- 运行";顶部";命令。它将在默认设置Irix模式打开的情况下显示顶部输出
- 按下";移位+i";将Irix模式切换到OFF
- 按下";shift+w";在当前位置为top创建一个配置文件(.toprc(
确认并检查顶部配置文件(.toprc(:
- 执行"ls-a-l";显示.toprc文件(它是一个隐藏文件(
- 打开文件,您应该会看到Mode_irixps=0(其中0=OFF和1=ON(
- 现在,如果顶部命令在当前位置执行,则它将在Irix模式关闭的情况下启动顶部
如果您想在虹膜模式关闭的情况下使用顶部命令,而不考虑位置,则:
- 将用户更改为"sudo-i"并导航到/root目录
- 用sudo运行top命令。(sudo上衣(。它将在默认设置Irix模式打开的情况下显示顶部输出
- 按下";移位+i";将Irix模式切换到OFF
- 按下";shift+w";为top-at/root目录创建一个配置文件(.toprc(
- 将python脚本中的top命令修改为"sudo top-b-n1-w512">
其他信息:如果创建的.toprc文件被删除,那么top命令将显示默认输出,即Irix模式ON。