홈페이지에서 검색을 해보니 아래와 같은 해결 방법이 간단한데도 찾을 수 없었습니다. 그럼 공유해 볼까요...
더 나은 해결책을 알고 있다면 공유해주세요.
다음 로그가 있습니다
콘텐츠
message 0956 5213649785 foobarfoobarfoobar foobar foobar foobarfoobar
message 2:1:0956 2:5:5213649785 foobarfoobarfoobar foobar foobar foobarfoobar
message 0989 5278956425 foobar foobarfoobar foobar foobar foobar
message 8:9:0989 6:1:5278956425 foobar foobarfoobar foobar foobar foobar
message 0856 9865452132 foobarfooba rfoobar foobar foobar foobar
message 7:4:0856 2:0:9865452132 foobarfooba rfoobar foobar foobar foobar
message 0989 2134687521 foob arfo obarfoo bar foobar foo bar foob ar
message 8:8:0989 9:0:2134687521 foob arfo obarfoo bar foobar foo bar foob ar
공백 사이에 12자의 숫자 문자열이 포함된 모든 줄을 가져오고 싶습니다.
이렇게 하면 숫자 문자열과 특정 길이를 찾을 수 있습니다.
grep -E '[0-9]{12}' file.log
하지만 공백 사이에서 그것들을 얻는 방법은 무엇입니까?
답변1
[[:space:]]
표현식 사용
grep -E '[[:space:]][0-9]{12}[[:space:]]' file.log
답변2
일치시키려는 정규식에 공백을 추가하기만 하면 됩니다.
grep -E ' [0-9]{12} ' file.log