파일을 정리하는 데 도움이 필요합니다

파일을 정리하는 데 도움이 필요합니다

내 프로젝트의 일부 파일을 정리하려고 하는데 도움이 필요합니다. 내 목표는 파일을 반복하고 패턴 뒤의 모든 것을 제거하는 것입니다.

내 현재 파일은 다음과 같습니다

nfr01wrp01:8440:
nfr01wrp01:8441: Server uptime:  19 days 23 hours 58 minutes 5 seconds
Total accesses: 559 - Total Traffic: 15.5 MB
CPU Usage: u124.03 s51.63 cu0 cs0 - .0102% CPU load
.000324 requests/sec - 9 B/second - 28.4 kB/request
nfr01wrp02:8442: Server uptime:  21 days 21 hours 28 minutes 54 seconds
Total accesses: 41 - Total Traffic: 593 kB
CPU Usage: u126.47 s52.63 cu0 cs0 - .00947% CPU load
2.17e-5 requests/sec - 0 B/second - 14.5 kB/request
ngr01wrp01:8443:
kfr01wrp02:8444:
ngr01wrp02:8445: Server uptime:  21 days 21 hours 28 minutes 56 seconds
Total accesses: 43 - Total Traffic: 664 kB
CPU Usage: u144.71 s62.25 cu0 cs0 - .0109% CPU load
2.27e-5 requests/sec - 0 B/second - 15.4 kB/request
nfr01wrp02:8446:

내가 원하는 출력은

nfr01wrp01:8441: Server uptime:  19 days 23 hours 58 minutes 5 seconds
Total accesses: 559 - Total Traffic: 15.5 MB
CPU Usage: u124.03 s51.63 cu0 cs0 - .0102% CPU load
.000324 requests/sec - 9 B/second - 28.4 kB/request
nfr01wrp02:8442: Server uptime:  21 days 21 hours 28 minutes 54 seconds
Total accesses: 41 - Total Traffic: 593 kB
CPU Usage: u126.47 s52.63 cu0 cs0 - .00947% CPU load
2.17e-5 requests/sec - 0 B/second - 14.5 kB/request
ngr01wrp02:8445: Server uptime:  21 days 21 hours 28 minutes 56 seconds
Total accesses: 43 - Total Traffic: 664 kB
CPU Usage: u144.71 s62.25 cu0 cs0 - .0109% CPU load
2.27e-5 requests/sec - 0 B/second - 15.4 kB/request

따라서 두 번째 다음에 아무것도 없는 줄을 삭제해야 합니다.

나는 다음을 시도했다

grep -o '*wrp0*:*:' clean.tmp > clean.out  - this deleted everything
grep -v '^$' clean.tmp > clean.out - this deleted blank lines only

어떤 도움이라도 대단히 감사하겠습니다.

답변1

$ grep -vE ':.+:$' input.txt   
nfr01wrp01:8441: Server uptime:  19 days 23 hours 58 minutes 5 seconds
Total accesses: 559 - Total Traffic: 15.5 MB
CPU Usage: u124.03 s51.63 cu0 cs0 - .0102% CPU load
.000324 requests/sec - 9 B/second - 28.4 kB/request
nfr01wrp02:8442: Server uptime:  21 days 21 hours 28 minutes 54 seconds
Total accesses: 41 - Total Traffic: 593 kB
CPU Usage: u126.47 s52.63 cu0 cs0 - .00947% CPU load
2.17e-5 requests/sec - 0 B/second - 14.5 kB/request
ngr01wrp02:8445: Server uptime:  21 days 21 hours 28 minutes 56 seconds
Total accesses: 43 - Total Traffic: 664 kB
CPU Usage: u144.71 s62.25 cu0 cs0 - .0109% CPU load
2.27e-5 requests/sec - 0 B/second - 15.4 kB/request

그러면 모든 라인이 출력됩니다.아니요패턴 일치 :.+:$(콜론, 하나 이상의 임의 문자, 또 다른 콜론, 줄 끝 마커 '. 출력정확히예제에서 원하는 출력을 일치시킵니다( diff및 를 사용하여 테스트 cmp).

정규 표현식에서 +표현식 사용하나 이상확장 정규식(ERE) 구문이 필요하므로 -Egrep 옵션을 사용합니다. 알아채다일부(예: GNU grep), 그러나 모든 버전의 grep에서 이스케이프를 허용하는 것은 아닙니다 +. \grep -v ':.\+:$'경우에도 작동합니다.

관련 정보