[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] get all devices from a vendor from pci.ids



Op Thu, 05 Jan 2017 18:13:41 +0100 schreef Javier Barroso <javibarroso@gmail.com>:

Hello,


On Thu, Jan 5, 2017 at 6:00 PM, Floris <jkfloris@dds.nl> wrote:
Op Wed, 04 Jan 2017 17:27:55 +0100 schreef Floris <jkfloris@dds.nl>:


(Not really a Debian question, but I know there are smart people on this
list.)

I want to search the pci.ids file (from the pciutils package) for all
Compaq devices.
Pci ID's 0e11:xxxx , 1032:xxxx and 10da:xxxx matches Compaq.
Unfortunately, only at a beginning of a list the id of the vendor is printed in column 1. The id of the devices are printed in column 2, with an empty
first column.

(part of pci.ids)
...
0e11  Compaq Computer Corporation
        0001  PCI to EISA Bridge
        0002  PCI to ISA Bridge
        0046  Smart Array 64xx
                0e11 4091  Smart Array 6i
                0e11 409a  Smart Array 641
                0e11 409b  Smart Array 642
                0e11 409c  Smart Array 6400
                0e11 409d  Smart Array 6400 EM
        0049  NC7132 Gigabit Upgrade Module
        004a  NC6136 Gigabit Server Adapter
...
        c000  Remote Insight Lights-Out Edition
        f130  NetFlex-3/P ThunderLAN 1.0
        f150  NetFlex-3/P ThunderLAN 2.3
0e55  HaSoTec GmbH
...

Is there an awk, grep and or sed solution?

Floris


an other solution would be something like:

# cat pci.ids | {magic-command} 0e11:004a
NC6136 Gigabit Server Adapter

what is the magic command?

Using perl:

perl -ne 'print if (/^0e11/.../^\S/) and (/^\s/) or (/^0e11/);'
/usr/share/misc/pci.ids


Thanks! But I prefer a solution with "essential" Debian software/ packages

Floris


Reply to: