grep에서 정규표현식 사용할때...

gloryju의 이미지

제가 하고 싶은것은
본문에 있는
====
int main() /* fgets.c main */

요 라인 전체를 정규표현식으로 나타내서 위치하고 있는 라인을 찾는 건데요..

grep -n "^int main() \/\* fgets\.c main \*\/$" fgets.c

요렇게 하는건데... 이때 정규표현식은 제대로 만들어진것 같은데..
라인 끝을 나타내는 '$' 이 들어가면 검색이 안되고.. 뺴면..검색이 됩니다.
그러나 전 꼭 '$' <-- 이것도 포함해서 검색을 하고 싶거든요..

뭐가 문제인지 궁금합니다..

crimsoncream의 이미지

혹시 공백 문자가 들어간 거 아닐까요.

grep -n "^int main() \/\* fgets\.c main \*\/[[:space:]]*$" fgets.c 

오늘 우리는 동지를 땅에 묻었습니다. 그러나 땅은 이제 우리들의 것입니다.
아직도 우리의 적은 강합니다. 그러나 우리는 그들보다 많습니다.
항상 많을 것입니다.