수정자의 의미는 다음과 같습니다.
-\{m\} exactly m repetitions of previous character
- \{m,\} at least m repetitions of previous character
- \{m,n\} any number of repetitions of prev char between m and n inclusive
- \< beginning of word
- \> end of word
그들을 피하는 이유는 무엇입니까?
예를 들어, file1에 "cat"이라는 단어가 포함되어 있는 경우:
$ egrep -n '\<cat\>' file1
17:cat
위 명령은 "cat"이라는 단어를 찾았지만 아래 명령은 어떻습니까? 아무것도 반환하지 않지만 실제로 무엇을 하고 있습니까?
$ egrep -n '<cat>' file1
답변1
초기 버전은 , , , , 및 메타 문자를 인식 grep
하지 못했기 때문에 서로 일치했습니다. 유일한 메타 문자는 , , , 및 입니다 . 이 동작은 이전 버전과의 호환성을 위해 유지됩니다(이전 스크립트를 다시 작성할 필요 없이 그대로 작동할 수 있음). 따라서 최근에 개발된 메타 문자의 특수 속성을 활성화 하려면 를 사용해야 하며 , 개행 문자와 탭을 의미하는 and not 과 같이 개행 문자와 탭을 얻으려면 and 를 사용해야 합니다 .{…}
?
+
(…)
<
>
[…]
^
$
.
*
\
\
n
t
n
t
\n
\t