
텍스트 파일의 zzz 줄부터 시작하는 반복이 있습니다.
zzz ***Wed Aug 16 06:00:30 UTC 2017
MemTotal: 195702024 kB
MemFree: 1323524 kB
..
Cached: 58020288 kB
..other rows
zzz ***Wed Aug 16 06:01:00 UTC 2017
MemTotal: 195702024 kB
MemFree: 1379588 kB
..other rows
Cached: 58001952 kB
..other rows
가치관을 요약하고 싶다여유 메모리:그리고은닉처:각 반복마다. 한 줄에는 3개의 열이 있습니다. KB는 세 번째 열입니다.
예를 들어:
MemFree: 1323524 kB + Cached: 58020288 kB = 59343812
MemFree: 1379588 kB + Cached: 58001952 kB = 59381540
다음과 같은 출력을 원합니다.
Total Available Memory = 59343812
Total Available Memory = 59381540
...
...
답변1
"row zzz"가 이 질문과 어떤 관련이 있는지는 나에게 명확하지 않습니다. zzz 행 앞에 무시하고 싶은 다른 "MemFree:" 및 "Cached:" 항목이 있습니까? 그러나 "MemFree:" 행의 두 번째 열 값을 캡처하여 저장하고 다음 "Cached:" 행의 값에 추가하는 간단한 솔루션은 다음과 같습니다.
awk '
$1 == "MemFree:" { free = $2 }
$1 == "Cached:" { print "Total Available Memory =", free+$2 }
'