gpt4 book ai didi

bash - 如何从 Bash 脚本命令的实时输出中提取一些字段

转载 作者:行者123 更新时间:2023-11-29 09:15:31 25 4
gpt4 key购买 nike

我想从命令 xentop 的输出中提取一些字段。这就像 top 命令;提供持续查看 CPU 使用情况、内存使用情况……实时。如果我以批处理模式运行此命令,我将获得您在文件中看到的输出:

      NAME  STATE   CPU(sec) CPU(%)     MEM(k) MEM(%)  MAXMEM(k) MAXMEM(%) VCPUS NETS NETTX(k) NETRX(k) VBDS   VBD_OO   VBD_RD   VBD_WR  VBD_RSECT  VBD_WSECT SSID
Domain-0 -----r 13700 33.0 7127040 85.9 no limit n/a 8 0 0 0 0 0 0 0 0 0 0
fed18 -----r 738 190.6 1052640 12.7 1052672 12.7 3 1 259919 8265 1 0 82432 22750 2740966 1071672 0

并运行这个

cat file| tr '\r' '\n' | sed 's/[0-9][;][0-9][0-9][a-Z]/ /g' | col -bx | awk '{print $1,$4,$6}'

在这个文件上给了我我想要的

NAME CPU(%) MEM(%)
Domain-0 33.0 85.9
fed18 190.6 12.7

但我的脚本不适用于 xentop 的实时输出。我什至尝试通过将迭代选项设置为 1(xentop -i 1) 来运行 xentop 一次,但它不起作用!如何将 xentop 的输出作为“非”实时管道传输到我的脚本?

最佳答案

它可能没有向标准输出流发送任何输出。有几种方法可以在不使用标准输出的情况下将输出发送到屏幕。快速谷歌搜索并没有提供太多关于其内部运作方式的信息。

关于bash - 如何从 Bash 脚本命令的实时输出中提取一些字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18673395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com