답변:
일반 정규 표현식, 문자로 (
, |
그리고 )
필요 이스케이프합니다. 그래서 당신은 사용해야합니다
$ grep "^ID.*\(ETS\|FBS\)" my_file.txt
확장 정규식 ( -E
) 옵션 을 사용할 때 이스케이프가 필요하지 않습니다 . man grep
섹션 " Basic vs Extended Regular Expressions
"을 참조하십시오 .
여러 분기 ( |
as or
) 를 사용하려는 경우 호환성을 높이려면 "modern RE"(일명 RE)를 사용한다고 명시 적으로 언급하는 것이 좋습니다. 오히려.
그렇게하려면 grep -E를 사용하십시오 .
grep -E "^ID.*(ETS|FBS)" my_file.txt
RE, ERE 및 전체 "현대"ER 스토리에 대한 자세한 내용은을 참조하십시오 man 7 regex
.
또는 egrep
대신 대신 사용할 수 grep
있지만 다음과 같이 읽을 수 있습니다 man grep
.
egrep은 grep -E와 동일합니다. fgrep는 grep -F와 같습니다.
(...)
egrep 또는 fgrep 로서의 직접 호출 은 더 이상 사용되지 않습니다
egrep
대신에 사용할 수도 있습니다grep -E
.