grep을 사용하여 일치하는 단어가있는 줄을 반환 할 수 있지만 그 단어를 반환하는 방법은 무엇입니까? 가 말 :일치하는 단어를 얻는 방법 (줄이 아님)
The original MC68000 was fabricated using
방법 MC68000
을 반환?
grep을 사용하여 일치하는 단어가있는 줄을 반환 할 수 있지만 그 단어를 반환하는 방법은 무엇입니까? 가 말 :일치하는 단어를 얻는 방법 (줄이 아님)
The original MC68000 was fabricated using
방법 MC68000
을 반환?
자주 묻는 질문입니다. GNU grep은 이것을 위해 -o
을 가지고 있습니다 (전체 라인이 아닌 only
을 보여줍니다). 이것은 Single Unix Specification에 설명되어 있지 않습니다.
사용은 나오지 :
grep "myword" myfile | sed "s/.*\(myword\).*/\1/"
이것은 GNU 확장에 의존하지 않으므로 가장 표준에 부합하는 대답입니다. 하지만 sed에서 모든 것을 할 수 있기 때문에 'grep'을 쓸모 없게 사용할 수 있습니다.'sed -n -e 's /.* \ (myword \). */\ 1 /'-e '/ myword/p ''. '-n'은 sed가 모든 줄을 반향하는 것을 멈추고 그래서'p'를 사용하여 원하는 것을 인쇄합니다 ("grep"의 마지막 글자). – Kaz
나는이 그가 요구 한 것입니다 확실하지 않다. 나는 그가 3 개의 들판을 돌려주고 싶어한다는 것을 이해했다. – gdoron
예 : 'grep -E -o 'MC68 [0-9] +''는'MC68000'과 일치 할 것입니다. demaxSH가 대답을 받아 들인 것 같습니다. – Kaz