Grep은 X로 시작하고 정확한 단어를 포함하는 줄에서 일치하는 항목을 찾습니다(정확한 단어는 하이픈으로 연결됩니다).

Grep은 X로 시작하고 정확한 단어를 포함하는 줄에서 일치하는 항목을 찾습니다(정확한 단어는 하이픈으로 연결됩니다).

내 입력은 아래와 같습니다.


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

다음 출력만 반환하려고 합니다.


name 12.3.14.132 root-servers_net-ipv4

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

-w는 하이픈으로 연결된 단어를 인식하지 못하는 것 같습니다.

다음을 시도했지만 결과가 반환되지 않았습니다.

grep -P '(^|\s)\Kroot-servers_net-ipv4(?=\s|$)' test_asa_policy

답변1

정규식 "을 사용하세요.문자열의 끝"앵커 $:

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

산출:

name 12.3.14.132 root-servers_net-ipv4

관련 정보