특정 길이 이하의 단어를 grep


9

나는 i log for E M, i 1 f x i 0, I xi 1, 3 1,.단순히 문자 수를 기반으로 다음과 같은 것을 grep하는 방법을 찾고 있습니다.

그 가상 출력의 3 자 이상은 없습니다. 이 가상의 단일 라이너는 다음과 같습니다 grep -v [:alnum:] > {3}. (단지 grep 구문으로 작성하는 방법을 모릅니다.)


단어의 일부 ,.같은 문자를 일치 시키려고합니까?

답변:


19
grep -o -w '\w\{1,3\}' data

옵션은 다음과 같습니다.

  • -o 일치하는 단어 만 인쇄
  • -w는 전체 단어와 만 일치

1에서 3까지의 단어 (grep \ w = [[: alnum :]] = [A-Za-z0-9]) 와만 일치합니다 ({1,3}으로 지정).


감사. 대답의 기본 구문은 내가 필요한 것입니다. grep '\ w \ {3}'데이터와 grep -v.와 동일한 명령을 사용했습니다.
ixtmixilix
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.