아래 top 명령을 사용하여 메모리 사용량을 얻으려고합니다.
KiB Mem : 8009480 total, 1438848 free, 1964392 used, 4606240 buff/cache
KiB Swap: 7340028 total, 5302364 free, 2037664 used. 5202692 avail Mem
top -p $PID -n 1 -b | grep 'KiB Mem :' | awk -F, '{print $3}'
1963780 used
이상한 점은 때때로 내가 받는 출력이 다음과 같다는 것입니다.
*"15108960+used"*
가끔 , 기호가 나타나는 이유를 이해할 수 없습니다 +
.*
매뉴얼 페이지에서 이에 대한 내용을 찾을 수 없습니다.
그게 무슨 뜻이야? 출력에서 명령을 제외하고 top
명령을 인쇄하는 방법.*
+
참고: CentOs 시스템에서 실행 중입니다.
답변1
우선, top
이것은 기계의 메모리에 대한 정보를 얻는 좋은 방법이 아닙니다. 이 free
명령은 메모리 정보를 얻는 데 사용됩니다. 을 사용할 수도 있습니다 vmstat -s
.
이제 에 관해서는 요약 영역에 문자가 표시되지 top
않지만 기호에 대한 설명은 의 매뉴얼 페이지에 나타납니다.*
+
top(1)
:
If you see a `+' between a displayed number and the
following label, it means that top was forced to truncate
some portion of that number. By raising the scaling
factor, such truncation can be avoided.
-E
플래그나 대화형 명령을 사용하여 크기 조정을 KiB에서 다른 값으로 변경할 수 있습니다 E
.
-E :Enforce-Summary-Memory-Scaling as: -E k | m | g | t | p | e
Instructs top to force summary area memory to be scaled as:
k - kibibytes
m - mebibytes
g - gibibytes
t - tebibytes
p - pebibytes
e - exbibytes
Later this can be changed with the `E' command toggle.
예를 들어 -Em
크기 조정을 KiB에서 MiB로 변경합니다.
하지만 다시 한번 말씀드리지만, 메모리 정보만 얻으려면 사용하지 top
말고 free
.