猿问

Python:需要使用bash一线

我正在尝试编写脚本来帮助我的公司进行一些调查。我无法在系统上安装任何额外的软件包,我需要能够以百分比形式获得当前处理器的总负载。


到目前为止,我找不到任何允许该操作的本机python模块,因此我尝试使用bash命令:ps aux | awk'NR> 0 {s + = $ 3}; END {print“ CPU%”,s}'


我一直在os.system和os.popen中尝试过它,但似乎无法正确执行它。


import os, multiprocessing

p = os.system("ps aux|awk 'NR > 0 { s +=$3 }; END {print "cpu %",s}'")

print "Cores:", multiprocessing.cpu_count(), '\nCPU Load:', p

我可以使用一两个提示。我知道您应该在os.system中用','分隔命令和args,但是我已经尝试过了,但似乎无法正常工作。有谁知道用Python执行较长的单行代码的更好方法吗?



德玛西亚99
浏览 171回答 2
2回答

HUX布斯

尝试import os, multiprocessingp = os.popen("ps aux|awk 'NR > 0 { s +=$3 }; END {print s}'").read().rstrip("\n")print "Cores:", multiprocessing.cpu_count(), '\nCPU Load:', p, "%"给Cores: 4CPU Load: 5.1 %
随时随地看视频慕课网APP

相关分类

Python
我要回答