2014-04-24 2 views
0

많은 링크와 참조 문서를 따라 왔지만 여전히 오류가 있습니다. 'sx'로 시작 또는 끝나는 모든 단어를 나열하고 싶습니다. grep을 두 패턴으로 사용하는 방법은 무엇입니까?

awk '/^sx|sx$/' usr/dict/words 

그러나 나는 그렙 또는 egrep을하고도 일을 사용하려고 : 은 이미 잘 작동 해결책을 발견했다. 그리고 나는 그것을 더 간단하게 만들었다. 'ax'또는 'sx'가 포함 된 단어. 다시 작동하지 않았습니다.

grep 'ax|sx' words 
grep -E '^ax\|sx$' words 
egrep '^ax\|sx$' words 

오류 :

grep: illegal option -- E 
Usage: grep -hblcnsviw pattern file . . . 

어떤 제안에 감사드립니다.

enter image description here

+0

'grep'버전을 업그레이드하지 않는 한 여기에는 도움이되지 않습니다. 또는 다른 도구를 사용하십시오. – devnull

+0

@devnull 네가 틀렸어! 문제가 해결 되었기 때문입니다. – Bernard

+0

내가 받아 들인 대답에서 언급했던 것과 똑같은 일이 이전에 어떻게 작동하지 않았는지 이해하지 못합니다! 'egrep '^ ax | sx $'words' – devnull

답변

1

이 당신을 위해 작동합니다 :

egrep '(^ax|sx$)' usr/dict/words 

참고 :
내가 used를했습니다 사전에 sx로 끝나는 단어를 찾을 수 없습니다.

+0

예. 작동 중입니다. 약간의 차이점을 설명해 주시겠습니까? 설명서를 읽었으며 괄호가 없습니다. – Bernard

+0

당신 말이 맞습니다. sx와는 단어가 없습니다. 방금 예제로 사용했지만 도끼로 작동합니다. – Bernard

+1

코드가 맞았습니다. 그룹()을 놓친 것만으로'^ ax' 또는'sx $'와 (과) 일치 할 수 있습니다. –

관련 문제