lspciコマンドの代わりにファイルを読み込んでPCIデバイスを一覧表示する

lspciコマンドの代わりにファイルを読み込んでPCIデバイスを一覧表示する

ファイルからPCIデバイス情報を読み取る必要があります。ただし、このようなコマンドを使用すると、使用できない出力が表示されます。

cat /proc/bus/pci/05/00.0

出力:

�h��

この問題をどのように解決できますか?

オペレーティングシステム:DebianファミリーLinux x64、Kenel 4.19

ベストアンサー1

/proc/ 以下のすべてのファイルにテキストが含まれているわけではありません。

/proc/bus/pci/05/00.0(および同様のファイル)には、テキストではなくバイナリデータが含まれています。端末に表示するためではなく、バイナリデータ型を理解するプログラム(少なくともカーネル文書やソースコードのどこかに文書化されている)から読み取れるようになっています。

内部コンテンツを表示するにはhexdumpakaを使用できますhd

$ hd /proc/bus/pci/05/00.0
00000000  00 10 72 00 07 04 10 00  03 00 07 01 10 00 00 00  |..r.............|
00000010  01 c0 00 00 04 00 6c d2  00 00 00 00 04 00 28 d2  |......l.......(.|
00000020  00 00 00 00 00 00 00 00  00 00 00 00 00 10 40 30  |..............@0|
00000030  00 00 40 fe 50 00 00 00  00 00 00 00 0a 01 00 00  |[email protected]...........|
00000040

05:00.0に他のPCI-eデバイスがあることはほぼ確実であるため、出力が異なる場合があります。

おすすめ記事