首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用awk显示dwm xsetroot CPU使用率

使用awk显示dwm xsetroot CPU使用率
EN

Stack Overflow用户
提问于 2011-02-19 21:31:09
回答 1查看 3K关注 0票数 3

我正在使用Arch Linux中的dwm平铺窗口管理器。我想自定义顶部栏的显示。我已经添加了日期,内存,现在播放和正常运行时间的东西,但CPU显示器不能为我工作。当我尝试运行代码以显示终端中的CPU使用情况时,它工作得很好,但当我将它放在顶部栏中时,它就不起作用了。它根本不显示任何内容。代码如下:

代码语言:javascript
复制
while true; do
    xsetroot -name "Memory $(free -m | grep '^Mem' | awk '{print "total: " $2 "MB used: " $3"MB"}') | CPU $(top -n 1 | grep '^Cpu' | tr -d 'usy,' | awk '{print "user " $2 ", sys " $3}') | Uptime: $(uptime | awk '{print $3}' | tr -d ',') | Now playing: $(ncmpcpp --now-playing | tr -d '(:[:digit:])') | $( date +"%F %R" )"
    sleep 20s
done &

我所说的部分是在"CPU“字符串之后。代码在我的.xinitrc中,正如我所说的,除了CPU display之外,一切都工作得很好。

EN

回答 1

Stack Overflow用户

发布于 2011-06-03 21:57:36

您可以通过使用批处理模式的标志-b执行top来修复此问题。只有在这种模式下,您才能将输出作为普通文本发送到其他程序。所以这个循环将(希望)完成这项工作:

代码语言:javascript
复制
while true; do
    xsetroot -name "Memory $(free -m | grep '^Mem' | awk '{print "total: " $2 "MB used: " $3"MB"}') | CPU $(top -bn 1 | grep '^Cpu' | tr -d 'usy,' | awk '{print "user " $2 ", sys " $3}') | Uptime: $(uptime | awk '{print $3}' | tr -d ',') | Now playing: $(ncmpcpp --now-playing | tr -d '(:[:digit:])') | $( date +"%F %R" )"
    sleep 20s
done &
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5051040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档