Andrew Mercer
on this page
    sudo lshw -short                         # whole system, one line per device
    sudo lshw -short -class network          # NICs
    sudo lshw -class disk -class storage
    sudo lshw -class memory
    sudo lshw -html > hardware.html          # shareable report (also -json, -xml)
    

    Example (-short -class network):

    H/W path              Device       Class          Description
    ==============================================================
    /0/100/1c/0           wlan0        network        Wireless Network Adapter
    /0/100/1c.3/0         eth0         network        Gigabit Ethernet PCIe
    /1                    virbr0       network        Ethernet interface
    

    Run as root for complete information. To match an interface with its driver, see Identifying network interfaces and hardware. For quick alternatives: lspci, lsusb, lscpu, lsblk.