OS X에서는 좋은 결과를 얻었습니다.사람이 읽을 수 있는시스템 메모리는 다음과 같이 읽습니다.
printf -v system_memory \
"$(system_profiler SPHardwareDataType \
| awk -F ': ' '/^ +Memory: /{print $2}')"
echo "$system_memory"
친화적인 인쇄:
4 GB
Linux에서는 이것이 사실이지만:
lshw -class memory
다음과 같이 출력됩니다.
size: 4096MiB
나는 그것을 고통스럽게 분석하고 위의 문자열처럼 좋은 문자열로 바꾸려고 노력해야 합니다.
내가 잘못된 명령을 사용했나요?
답변1
그것이 필요한 전부라면 다음을 사용하십시오 free
.
$ free -h | gawk '/Mem:/{print $2}'
7.8G
free
-h
스위치가 사람이 읽을 수 있는 형식으로 인쇄하도록 지시하는 메모리 정보를 반환합니다 .
답변2
리눅스에서는,
read x memtotal x < /proc/meminfo
kiB 단위의 총 메모리 양이 $memory
저장됩니다. 이는 보고된 대로 Linux에서 사용할 수 있는 메모리 양입니다 free
.
RAM을 설치하려면 다음을 수행할 수 있습니다.
awk '{s+=$0};END{print s}' /sys/bus/mc*/devices/dimm*/size
MiB 단위로 크기를 가져옵니다. 또는
awk '{s+=$0};END{printf "%.2gG\n", s/1024}' /sys/bus/mc*/devices/dimm*/size
GiB 크기를 원하는 경우.
답변3
가장 간단한 방법은무료주문하다
free -gh