sudoコマンドを使用せずにbashからメモリ情報を取得する方法

sudoコマンドを使用せずにbashからメモリ情報を取得する方法

8 x 16384MB DIMM-1600 MT / s Samsungなどのメモリ情報を表示するsudoを使用せずにbashスクリプトを作成する方法がわかりません。メモリ数量+各サイズ+タイプ+メーカー

答え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、2番目はcache見つかった出力を切り捨てます。 egrepは、パイプ記号で区切られた単語を含む文字列のみを出力します。シェルの専門家はこれら3つの処理コマンドを1つに減らすことができますが、私はそれほど上手ではありません。

走ってsudo lshw -class memoryすべてを見ることができます。

関連情報