특정 문자열 제외 grep에는 유사한 문자열도 포함됩니다.

특정 문자열 제외 grep에는 유사한 문자열도 포함됩니다.

grep 명령을 사용하여 목록에서 특정 URL 항목(도메인 이름 대신 IP 사용) 을 제외하려고 합니다 . 특히 https://.:80https://:8080

내 grep 명령은 다음과 같습니다

egrep -v "https://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:80"

:80제외하지 않고 grep을 강제로 제외하는 방법:8080

입력 파일 내용의 예는 다음과 같습니다.

http://10.10.46.1:80
http://10.10.48.67:8080
http://10.10.48.67:443
https://10.10.46.1:80
https://10.10.48.67:8080
https://10.10.48.67:443

답변1

좀 더 구체적으로 명령을 내리세요 grep. IP가 줄의 유일한 항목인 경우 :80마지막 3자가 됩니다. 다음을 사용하세요.

grep -Ev "https://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:80$"

또는 뒤에 공백이 있을 수 있는 경우 다음을 80사용합니다.

grep -Ev "https://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:80\s*$"

줄의 마지막 항목이 아닌 경우 :80그 뒤에 공백이 있는 경우를 찾아보세요.

grep -Ev "https://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:80 "

마지막 문자가 공백이 아닌 경우 입력 내용에 맞게 조정하세요.

답변2

데이터에서 정규식을 활용하여 정규식을 압축할 수 있습니다.

egrep -xv 'https?://[0-9]{1,3}([.][0-9]{1,3}){3}:80'

관련 정보