grep: 예상치 못한 표시 "(" 근처에서 구문 오류가 발생했습니다.

grep: 예상치 못한 표시 "(" 근처에서 구문 오류가 발생했습니다.

이 문제가 있습니다. 파일에서 문자열을 찾고 있습니다. 구문은 다음과 같습니다.

grep -E '( ^ | [[:space:]] )[AZ]{2}[[:number:]]{2}((- | [[:space:]] )[[:alnum:]] {4}) {3} '(파일 이름)

우분투에서 이 명령을 실행하면 다음 오류가 발생합니다.

예기치 않은 표시 '(' 근처에 구문 오류가 있습니다.

왜?

답변1

올바른 간단한 따옴표( )를 사용하지 않은 것 같습니다 '. 다음을 복사하여 붙여넣어 보세요.

grep -E '( ^ | [[:space:]] )[A-Z]{2}[[:digit:]]{2}((- | [[:space:]] )[[:alnum:]]{4}) {3} '

(스크립트를 복사하여 붙여넣으면 bash에서 동일한 오류가 발생하며 대신 ')

관련 정보