egrep -i '12-12.*\swarning' log.file | cless
위 코드는 날짜와 12-12
임의의 문자, 공백, 추가 Warning
텍스트가 포함된 두 줄을 생성합니다.
2011-12-12 textetc Warning 1234
2011-12-12 textetc Warning 5678
끝에 1234를 포함하지 않는 행만 반환하고 싶습니다. 저는 GNU grep 2.5.4를 사용하고 있습니다.
현재 이것이 내 해결 방법입니다.
egrep -i '12-12.*\swarning' log.file > tmp.txt
egrep -i -v '1234' tmp.txt
파일을 생성하지 않고 첫 번째 파이프를 두 번째 파이프에 연결하려고 시도했지만 너무 많이 반환하거나 모두 잘못되었거나 아무것도 반환하지 않습니다.
답변1
2초를 사용해야 합니다 grep
.
grep -i '12-12.*[[:space:]]warning' log.file | grep -v '1234$'
또는 다음을 사용할 수 있습니다.awk
awk '/12-12.*[[:space:]]warning/ && ! /1234$/' log.file