如何在 bash 上不使用 sudo 命令获取内存信息

如何在 bash 上不使用 sudo 命令获取内存信息

不知道如何在不使用 sudo 的情况下创建 bash 脚本,该脚本显示内存信息,例如 8 x 16384 MB DIMM-1600 MT/s Samsung。内存数量 + 每个大小 + 类型 + 制造商

答案1

sudo lshw -class memory | sed -n '/-bank/,$p' | sed -n '/cache/q;p' | egrep "bank|description|product|size|clock|vendor"
     *-bank:0
          description: DIMM DDR4 Synchronous Unbuffered (Unregistered) 3600 MHz (0.3 ns)
          product: XXXXX
          vendor: CRUCIAL
          size: 16GiB
          clock: 3600MHz (0.3ns)
     *-bank:1
          description: DIMM DDR4 Synchronous Unbuffered (Unregistered) 3600 MHz (0.3 ns)
          product: XXXXX
          vendor: CRUCIAL
          size: 16GiB
          clock: 3600MHz (0.3ns)
     *-bank:2
          description: DIMM DDR4 Synchronous Unbuffered (Unregistered) 3600 MHz (0.3 ns)
          product: XXXXX
          vendor: CRUCIAL
          size: 16GiB
          clock: 3600MHz (0.3ns)
     *-bank:3
          description: DIMM DDR4 Synchronous Unbuffered (Unregistered) 3600 MHz (0.3 ns)
          product: XXXXX
          vendor: CRUCIAL
          size: 16GiB
          clock: 3600MHz (0.3ns)

第一个sed忽略输入中的所有内容,除非-bank找到,第二个一旦cache找到就截断输出。 egrep 仅输出包含由管道符号分隔的任何单词的字符串。 shell 大师可能可以将这三个处理命令减少到一个,但我不太擅长。

你可以跑过去sudo lshw -class memory看看一切。

相关内容