繁体   English   中英

python脚本捕获top命令的输出

[英]python script to capture output of top command

我试图使用以下 python 脚本捕获 top 命令的输出:

    import os
    process = os.popen('top')
    preprocessed = process.read()
    process.close()
    output = 'show_top.txt'
    fout = open(output,'w')
    fout.write(preprocessed)
    fout.close()

但是,该脚本不适用于 top。 它会卡住很长时间。 然而,它适用于像“ls”这样的命令。 我不知道为什么会这样?

由于您正在等待该过程完成,因此您需要告诉top只打印一次其输出,然后退出。

你可以通过运行来做到这一点:

top -n 1

从 python 读取标准输出时需要-b参数

os.popen('top -b -n 1')

top -b -n 1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM