
概要
デスクトップ左上のリンゴマーク押下からの「このMacについて」で表示される情報をコマンドラインから取得する方法を調べた。
system_profilerコマンドを使えば、「このMacについて」と同等な情報を取得できる。
system_profiler SPSoftwareDataType SPHardwareDataType SPMemoryDataType SPDisplaysDataType
この方法では、OSバージョン名(Montereyとか)と機種名(MacBook Pro (15-inch, 2016)とか)は、直接は取得できないが、対応表(Apple公式サイト)を用いればわかる。
動機
ブログ書くときに、自分の環境情報を手書きするのがだるいので、何かコマンドでまとめて出力してコピペするだけじゃダメかなと模索してて、そもそも「このMacについて(About This Mac)」で表示される情報はコマンドラインからも取得できるのか?の段階でとりあえず結果をまとめたのがこの記事。
環境情報なんてOSバージョンだけで十分だろと思っていたが、CPUがIntelかApple Silicon(M1とか)ではぼちぼち違いが出るらしいので、それも記載しといた方が良いのかなと思い始めた。
OS情報はsw_versコマンドで取得できる:
% sw_vers ProductName: macOS ProductVersion: 12.4 BuildVersion: 21F79
あとsysctl -aコマンドで、何かよくわからん情報がいっぱい取得できる。
その中にはCPU情報も含まれるようで、その部分だけ抽出するには下記のようにコマンド実行すればよい:
% sysctl machdep.cpu.brand_string machdep.cpu.brand_string: Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz
IntelかApple Siliconかはすぐ識別できそう。
unameコマンドとかもある。
もっと詳細な情報はsystem_profilerコマンドで取得できる模様(使い方はman system_profiler参照)。
とにかく、以下では「このMacについて」で表示される情報に限って取得してみた。
情報の取得
Software
macOSのバージョン番号が取得できる。
% system_profiler SPSoftwareDataType
Software:
System Software Overview:
System Version: macOS 12.4 (21F79) # macOSのバージョン番号
Kernel Version: Darwin 21.5.0
Boot Volume: Macintosh HD
Boot Mode: Normal
Computer Name: □□□
User Name: □□□ (□□□)
Secure Virtual Memory: Enabled
System Integrity Protection: Enabled
Time since boot: 11 days 9:09
macOSのバージョン名は、バージョン番号と下記サイトの対応表から確認できる。
| バージョン名 | バージョン番号 |
|---|---|
| Monterey | 12.x |
| BigSur | 11.x |
| Catalina | 10.15.x |
| Mojave | 10.14.x |
| High Sierra | 10.13.x |
| Sierra | 10.12.x |
Hardware
機種ID、プロセッサ情報、シリアル番号が取得できる。
% system_profiler SPHardwareDataType
Hardware:
Hardware Overview:
Model Name: MacBook Pro
Model Identifier: MacBookPro13,3 # 機種ID
Processor Name: Quad-Core Intel Core i7 # プロセッサ情報1
Processor Speed: 2.6 GHz # プロセッサ情報2
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Hyper-Threading Technology: Enabled
Memory: 16 GB
System Firmware Version: 451.120.7.0.0
OS Loader Version: 540.120.3~6
SMC Version (system): 2.38f12
Serial Number (system): □□□□□□□□□ # シリアル番号
Hardware UUID: □□□□□□-□□□-□□□-□□□-□□□□□□
Provisioning UDID: □□□□□□-□□□-□□□-□□□-□□□□□□
機種名(インチ、発売年)は、機種IDと下記サイトの対応表から確認できる。
Memory
メモリ情報が取得できる。
% system_profiler SPMemoryDataType
Memory:
Memory Slots:
ECC: Disabled
Upgradeable Memory: No
BANK 0/DIMM0:
Size: 8 GB
Type: LPDDR3 # 1つめのメモリ情報1
Speed: 2133 MHz # 1つめのメモリ情報1
Status: OK
Manufacturer: 0x802C
Part Number: 0x4D5435324C31473332443450472D30393320
Serial Number: -
BANK 1/DIMM0:
Size: 8 GB
Type: LPDDR3 # 2つめのメモリ情報1
Speed: 2133 MHz # 2つめのメモリ情報2
Status: OK
Manufacturer: 0x802C
Part Number: 0x4D5435324C31473332443450472D30393320
Serial Number: -
「このMacについて」では、2つのメモリ情報がまとめて(合算されて)表示されている。
Graphics
グラフィックス情報が取得できる。
% system_profiler SPDisplaysDataType
Graphics/Displays:
Intel HD Graphics 530: # 1つめのグラフィック情報1
Chipset Model: Intel HD Graphics 530
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 1536 MB # 1つめのグラフィック情報2
Vendor: Intel
Device ID: 0x191b
Revision ID: 0x0006
Automatic Graphics Switching: Supported
gMux Version: 4.0.29 [3.2.8]
Metal Family: Supported, Metal GPUFamily macOS 2
Radeon Pro 450: # 2つめのグラフィック情報1
Chipset Model: AMD Radeon Pro 450
Type: GPU
Bus: PCIe
PCIe Lane Width: x8
VRAM (Total): 2 GB # 2つめのグラフィック情報2
Vendor: AMD (0x1002)
Device ID: 0x67ef
Revision ID: 0x00ef
ROM Revision: 113-C980AF-908
VBIOS Version: 113-C9801AL-028
EFI Driver Version: 01.A0.908
Automatic Graphics Switching: Supported
gMux Version: 4.0.29 [3.2.8]
Metal Family: Supported, Metal GPUFamily macOS 2
Displays:
略
「このMacについて」では、グラフィックス名とVRAM情報が表示されている。
まとめ
system_profilerコマンドとApple公式サイトにある対応表を用いれば、「このMacについて」で表示される情報はすべてコマンドラインからも確認できる。
(左側に表示されている、OSのメジャーバージョンごとのアイコン画像は知らん)
あとは頑張って取得したデータを整形すれば、「このMacについて」と同じような形式で情報を表示できるかと思う。 本当はここまでやりたかったが面倒くさいのでやめた。
以上。