No OS X, recebo uma boa leitura da memória do sistema legível por humanos da seguinte forma:
printf -v system_memory \
"$(system_profiler SPHardwareDataType \
| awk -F ': ' '/^ +Memory: /{print $2}')"
echo "$system_memory"
imprime o amigável:
4 GB
Embora isso no Linux esteja correto:
lshw -class memory
produz:
size: 4096MiB
Eu preciso analisá-lo dolorosamente e tentar transformá-lo em uma string tão boa quanto a acima.
Estou usando o comando errado?