Cat
通過讀取文件列出 PCI 設備(而不是 lspci 命令)
我需要從文件中讀取 PCI 設備資訊。但是當我使用這樣的命令時,它會給出不可用的輸出:
cat /proc/bus/pci/05/00.0
輸出:
�h��
我該如何解決這個問題?
作業系統:類 Debian 的 Linux x64,Kenel 4.19
並非 /proc/ 下的每個文件都包含文本。
/proc/bus/pci/05/00.0
(和類似文件)包含二進制數據,而不是文本。它們並不是要顯示在終端上,而是要由理解二進制數據格式的程序讀取(至少將在核心文件或原始碼的某處記錄)。如果你想看看裡面有什麼,你可以使用
hexdump
akahd
:$ 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 |..@.P...........| 00000040
您的輸出可能會有所不同,因為您幾乎可以肯定在 05:00.0 有不同的 PCI-e 設備