シェルスクリプトでシステム情報を取得(1)
PowerShellでのシステム情報が一段落したところで、次はLinuxです。Linuxはシェルスクリプトを使います。今回はその中でもBashを使用していきます。
PowerShellも構文などに結構クセが強かったりしますが、シェルスクリプトもその傾向があります。個人的にはPowerShellよりもシェルスクリプトのほうが好きではありますが。
さて、システム情報はだいたい
sudo dmidecode
というコマンド一発で表示できます。ただ情報量が多すぎるので
sudo dmidecode --type system
でシステム情報のみを出力します。それでも情報量がまだ多いので
sudo dmidecode --type system | grep Manufacturer
Manufacturerをgrepで抽出すると
Manufacturer: LENOVO
文頭の空白が邪魔なのでsedで切り取ります。
sudo dmidecode --type system | grep Manufacturer | sed 's/^[[:blank:]]*//'
結果として以下のように出力されます。
Manufacturer: LENOVO
シェルスクリプトの場合、コマンドの結果を変数に代入するには、`(バッククオーテーション)で囲んであげます。いちいちsudoをつけるのも面倒なのでスーパーユーザーに昇格後にコマンドを打つといいです。
sudo su
manufacturer=`dmidecode --type system | grep Manufacturer | sed 's/^[[:blank:]]*//'`