Grep para correspondências de linha começando com X e contendo a palavra exata (a palavra exata é hifenizada)

0

Eu tenho uma entrada parecida com a seguinte.

name 12.3.14.132 root-servers_net-ipv4
name 19.17.191.123 root-servers_net-ipv4-1
name 192.223.210.110 root-servers_net-ipv4-2
name 172.7.1.31 root-servers_net-ipv4-3
name 1.12.6.14 root-servers_net-ipv4-4

Estou tentando retornar apenas a seguinte saída.

name 12.3.14.132 root-servers_net-ipv4
grep '^name.* ' test_asa_policy |grep -w "root-servers_net-ipv4"

Parece que não reconhece palavras com hífen.

Eu tentei o seguinte, mas ele não retornou resultados

grep -P '(^|\s)\Kroot-servers_net-ipv4(?=\s|$)' test_asa_policy
    
por Christopher Masopust 30.08.2017 / 16:09

1 resposta

2

Use apenas o regexp " fim da string " anchor $ :

grep '^name.*root-servers_net-ipv4$' test_asa_policy

A saída:

name 12.3.14.132 root-servers_net-ipv4
    
por 30.08.2017 / 16:19