grep -E 中的“或”条件

grep -E 中的“或”条件
1)ovs-ofctl show br-int | grep "qvo\|tap" | awk '{print $1}' | grep -E "5.tap"   

上述(1)工作正常,但如果我在grep -E下面的命令中包含“或”,我不会得到任何输出。

2) ovs-ofctl show br-int | grep "qvo\|tap" | awk '{print $1}' | grep -E "5.qvo\|5.tap"


root@veer:/opt# ovs-ofctl show br-int 
OFPT_FEATURES_REPLY (xid=0x2): dpid:0000963b9c611e40
n_tables:254, n_buffers:256
capabilities: FLOW_STATS TABLE_STATS PORT_STATS QUEUE_STATS ARP_MATCH_IP
actions: OUTPUT SET_VLAN_VID SET_VLAN_PCP STRIP_VLAN SET_DL_SRC SET_DL_DST SET_NW_SRC SET_NW_DST SET_NW_TOS SET_TP_SRC SET_TP_DST ENQUEUE
 5(tap37ec1c83-29): addr:fa:f3:58:76:39:8f
     config:     0
     state:      LINK_DOWN
     current:    10GB-FD COPPER
     speed: 10000 Mbps now, 0 Mbps max

有什么想法,如何做到这一点,或者我们可以做什么awk

答案1

使用awk您可以执行以下操作:

ovs-ofctl show br-int | awk '/5.tap/ || /5.qvo/'

或者

ovs-ofctl show br-int | awk '/5.(tap|qvo)/'

相关内容