경기 후 너무 많은 정보를 얻는 문제가 있습니다
grep -RnisI --color=auto "pseudomonas" *
경기 전후 20 문자 또는 10 단어 만 얻으려고합니다.
그러한 일을하는 올바른 도구는 무엇입니까?
답변
cat file.txt | grep -o -P '.{0,20}string.{0,20}'
이것은 당신을 위해해야합니다
최신 정보:
고양이를 원하지 않으면 grep을 파일과 함께 매개 변수로 사용할 수 있습니다.
grep -o -P '.{0,20}pseudomonas.{0,20}' FileName.html
또한 -P는 매뉴얼 페이지에 실험적인 Perl Regex를 사용합니다.이 플래그를 피하려면 egrep을 대신 사용할 수 있습니다.
grep -Eo '.{0,20}yourstring.{0,20}' yourtestfile.txt
답변
pcregrep -MnirIso '(?s).{0,20}pseudomonas.{0,20}' . |
grep --color -e '^' -e pseudomonas
일치하는 항목과 해당 컨텍스트가 겹치지 않으며 파일 이름에 포함되지 않은 것으로 가정합니다 pseudomonas
.
또한보고 된 행 번호는 컨텍스트의 시작 번호입니다.