grep -E 하위 도메인이 메일 ID와 일치하지 않습니다.

grep -E 하위 도메인이 메일 ID와 일치하지 않습니다.

내 Apache 액세스 로그에서 일치하는 모든 URL을 찾고 싶습니다 *.google.com. 나는 이것을 시도했지만 grep -E *.google.com또한 일치했습니다 [email protected]. 이는 바람직하지 않습니다. 이것을 어떻게 피할 수 있습니까?

답변1

처음 에는 말이되지 않았습니다 *. .정규식에 있는 내용은 무엇이든 일치합니다. 즉, @주소에 있는 내용입니다. 텍스트 포인트를 일치시키려면 를 사용하십시오 \..

echo [email protected] | grep -E '\.google\.com' || echo no match

답변2

제가 아는 바로는 유효한 도메인 이름에는 문자, 숫자, 하이픈이 포함되어 있습니다. 이 시도:

grep -E '[[:alnum:]-]+\.google\.com'

정규식 튜토리얼을 검색해 보세요. 도움이 될 것입니다.

관련 정보