# lshw -c 网络-businfo 总线信息 设备类别 描述 =================================================== ====== pci@0000:03:00.0 enp3s0 网络 I210 千兆网络连接 pci@0000:04:00.0 mec_test_1 网络 I350 千兆网络连接 pci@0000:04:00.1 mec_test_2 网络 I350 千兆网络连接 pci@0000:04:00.2 mec_test_3 网络 I350 千兆网络连接 pci@0000:04:00.3 mec_test_4 网络 I350 千兆网络连接 pci@0000:b5:00.0 网络英特尔公司 pci@0000:b5:00.1 网络英特尔公司 pci@0000:b5:00.2 mec_test_5 网络 英特尔公司 pci@0000:b5:00.3 enp181s0f3 网络 英特尔公司
如果我想传递 Device 为空,该怎么做?喜欢
总线信息 设备类别 描述 =================================================== ====== pci@0000:03:00.0 enp3s0 网络 I210 千兆网络连接 pci@0000:04:00.0 mec_test_1 网络 I350 千兆网络连接 pci@0000:04:00.1 mec_test_2 网络 I350 千兆网络连接 pci@0000:04:00.2 mec_test_3 网络 I350 千兆网络连接 pci@0000:04:00.3 mec_test_4 网络 I350 千兆网络连接 pci@0000:b5:00.2 mec_test_5 网络 英特尔公司 pci@0000:b5:00.3 enp181s0f3 网络 英特尔公司
答案1
一种简单的方法是要求 grep 在第 19 列中查找非空格字符:
lshw -c network -businfo | grep -E '^.{18}[^ ]'
该grep
命令正在寻找锚定到行开头的模式;接下来是 18 个任意字符,然后是非空格的内容。
或者,如果那里有一个 TAB 而不是空格,请使用该类[:space:]
:
lshw -c network -businfo | grep -E '^.{18}[^[:space:]]'