Как узнать то, что Linux использует для управления моими аппаратными средствами

Я хочу узнать то, что является использованием Linux для управления моими аппаратными средствами. Я предполагаю модули и драйверы, и возможно они - то же.

Я получил этот ответ: Как я узнаю, какой драйвер часть аппаратных средств использует?

И существует способ перечислить драйверы, но я также хочу добавить идентификатор к каждому элементу списка.

Если я выполняю эту команду, это - то, что происходит:

sudo lshw | grep -Eo 'driver=[^ ]+' | sort -u | cut -d\= -f2

agpgart-intel

ahci

ath9k

atl1c

ehci-pci

hub

i915

intel

lpc_ich

mei_me

pcieport

snd_hda_intel

tun

usb-storage

uvcvideo
1
задан 13 April 2017 в 15:24

1 ответ

Если Вы обеспокоены только фильтрацией вывода lshw для показа устройства и его соответствующего драйвера, можно использовать lshw и awk рев комбинации:

sudo lshw | awk '/product:/{  if(length(PROD) > 0){PROD=""};  for(i=1;i<=NF;i++) PROD=PROD" "$i  } /driver=/{  for(j=1;j<=NF;j++){ if($j~/driver=/) DRIVER=$j   };print "---",PROD,DRIVER; PROD=""}' 

Основная идея здесь состоит в том, что мы находим строки, которые имеют "продукт:..". в них и хранилище в НАПОМИНАНИЕ. Поскольку некоторые устройства не перечисляют драйверы, мы, возможно, неоднократно добавляли строку после строки для ПОДТАЛКИВАНИЯ переменной, таким образом, в начале мы проверяем длину строки НАПОМИНАНИЯ. Другое соответствие, которое продолжается, для строк, содержащих driver= часть. После того как у нас есть это, мы печатаем и продукт и информацию о драйвере.

Bellow является командой, соединенной в сценарий и демонстрационный вывод:

$ cat ./dev-drivers.sh                                                                                            
#!/bin/bash

sudo lshw | awk '/product:/{  if(length(PROD) > 0){PROD=""};\
            for(i=1;i<=NF;i++) PROD=PROD" "$i  }\
             /driver=/{  for(j=1;j<=NF;j++){ if($j~/driver=/) DRIVER=$j   };\
             print "---",PROD,DRIVER; PROD=""}' 

$ ./dev-drivers.sh                                                                                                
[sudo] password for xieerqi: 
---  product: ValleyView SSA-CUnit driver=iosf_mbi_pci
---  product: ValleyView Gen7 driver=i915
---  product: ValleyView 6-Port SATA AHCI Controller driver=ahci
---  product: ValleyView USB xHCI Host Controller driver=xhci_hcd
---  product: ValleyView SEC driver=mei_txe
---  product: ValleyView High Definition Audio Controller driver=snd_hda_intel
---  product: ValleyView PCI Express Root Port driver=pcieport
---  product: RTL8101E/RTL8102E PCI Express Fast Ethernet controller driver=r8169
---  product: ValleyView PCI Express Root Port driver=pcieport
---  product: QCA9565 / AR9565 Wireless Network Adapter driver=ath9k
---  product: ValleyView PCI Express Root Port driver=pcieport
---  product: RTS5229 PCI Express Card Reader driver=rtsx_pci
---  product: ValleyView Power Control Unit driver=lpc_ich
1
ответ дан 7 December 2019 в 16:00

Другие вопросы по тегам:

Похожие вопросы: