You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何高亮dmidecode -t memory输出中的空内存插槽并解决颜色失效问题

解决dmidecode内存信息中Unknown和DIMM的高亮问题

修正后的完整命令

直接使用以下命令即可实现Unknown和DIMM的白字红底高亮:

dmidecode -t memory | awk '
    /\tDevice/{i++; print "Device "i}
    /\tSpeed|GB|Factor|Device/{
        gsub(/Unknown|DIMM/, "\033[37;1;41m&\033[0m")
        print $0
    }
'

关键调整说明

  • 改用\033替代原颜色序列里的\e:部分awk版本对\e转义支持不佳,\033是ANSI转义序列的标准写法,兼容性更好
  • 用gsub()全局替换匹配内容:&代表匹配到的Unknown或DIMM字符串,前后分别加上颜色启动序列和恢复默认颜色的\033[0m,避免后续文本持续保持高亮
  • 整合原命令的打印逻辑:把设备计数和参数输出的逻辑合并,减少重复处理

颜色不显示的排查点

  • 确保终端支持ANSI颜色:现代终端(如gnome-terminal、iTerm2、xterm)均支持,老旧终端可能需要开启相关设置
  • 若通过管道输出到分页工具(如less),需加-R参数保留颜色:dmidecode ... | awk ... | less -R
  • 确保获取完整内存信息:部分系统需要sudo权限执行dmidecode,命令改为sudo dmidecode -t memory | awk ...

内容的提问来源于stack exchange,提问作者Anna R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 06:09:23