![如何使用类似于 top 命令的命令行获取系统监视器的所有输出但它并没有提供所有值?](https://linux22.com/image/919154/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E7%B1%BB%E4%BC%BC%E4%BA%8E%20top%20%E5%91%BD%E4%BB%A4%E7%9A%84%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%8E%B7%E5%8F%96%E7%B3%BB%E7%BB%9F%E7%9B%91%E8%A7%86%E5%99%A8%E7%9A%84%E6%89%80%E6%9C%89%E8%BE%93%E5%87%BA%E4%BD%86%E5%AE%83%E5%B9%B6%E6%B2%A1%E6%9C%89%E6%8F%90%E4%BE%9B%E6%89%80%E6%9C%89%E5%80%BC%EF%BC%9F.png)
top
如何使用终端命令行(例如以逗号分隔的格式的命令(每秒“每个进程”))获取 Ubuntu 系统监视器的所有参数值?
例如,Top 命令...终端
“当读取 -rabcdefghijkl 时;执行 \ echo $a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l;完成 < <(top -b)”
但这不包括读/写速度(kb/s),也不包括磁盘读/写总参数值。我可以使用另一个终端命令访问这些值,例如
“iotop-a”
但是这样,我必须运行两个不同的命令,这两个命令会在两个不同的终端或不同的记录上给我值,如果我导出,我需要使用一些 TID/PID 进行连接。所以为了摆脱这项工作,我想知道是否有其他命令可以以逗号分隔的方式将资源监视器 GUI 中可见的所有参数导出到单个记录行中?
我想要访问下图所示的所有信息:
资源监视器截图
如何使用终端命令以文本格式获取数据的 GUI 表示?我有一个 Java 代码,可以将终端命令输出写入我想要的 CSV 文件或文本文件,并添加元数据。
如果有命令可以执行此操作,那将会很有帮助。谢谢。
答案1
您可以使用 top 和 while 循环来用逗号分隔字段。
$ while read -r a b c d e f g h i j k l; do \
echo $a,$b,$c,$d,$e,$f,$g,$h,$i,$j,$k,$l; done < <(top -b)