3 votos

¿Algún comando para listar la memoria en MB en lugar de kB desde / proc / meminfo?

Cat, less, more, head tail, etc. probé con todas las opciones que conozco. No se puede encontrar la forma de enumerar la memoria en Megabytes en lugar de kB.

3voto

DavidPostill Puntos 30286

No se puede encontrar el cómo de la lista de la memoria en Megabytes en lugar de kB.

Esto convertirá cualquier kB líneas MB:

awk '$3=="kB"{$2=$2/1024;$3="MB"} 1' /proc/meminfo | column -t

Esta versión se convierte en gigabytes:

awk '$3=="kB"{$2=$2/1024**2;$3="GB";} 1' /proc/meminfo | column -t

Para completar, este se convertirá en MB o GB) según corresponda:

awk '$3=="kB"{if ($2>1024**2){$2=$2/1024**2;$3="GB";} else if ($2>1024){$2=$2/1024;$3="MB";}} 1' /proc/meminfo | column -t

Fuente Cómo mostrar /proc/meminfo en Megabytes, respuesta por John1024

1voto

En bash puedes hacerlo de esta manera

 #! /bin/bash
kb-to-mb()
{

        echo $1" "$(( $2 / 1024))" "MB

}

exec < /proc/meminfo

while read a b c
do
  if [ o$c = "okB" ]
    then
       kb-to-mb $a $b $c
    else
       echo  $a $b $c
       kb-to-mb $a $b $c
done | column -t
 

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: