variable una sirve scripts script resultado que programas pasar parametros para operaciones manejo guardar entorno ejemplos cómo comando cadenas aritmeticas bash

una - scripts bash ejemplos



¿Cómo obtener la memoria física total en Bash para asignarla a una variable? (5)

¿Cómo puedo obtener la memoria física total en bytes de mi PC con Linux?

Necesito asignarlo a una variable de script bash.


Qué tal si

var=$(free | awk ''/^Mem:/{print $2}'')


Se me ocurrió esto bajo la suposición de que la memoria física será el primer número en producción gratuita:

free -m | grep -oP ''/d+'' | head -n 1

Esto le permite configurar de forma gratuita la unidad que desea (-m, -g, ...) y es independiente del idioma del sistema (otras respuestas dependen de la cadena "Mem:" en la salida de Free, que puede cambiar en función de el idioma.


Silly inline python, que parece demasiado complicado, pero en realidad es útil.

freemem=$(echo -e ''import re/nmatched=re.search(r"^MemTotal:/s+(/d+)",open("/proc/meminfo").read())/nprint(int(matched.groups()[0])/(1024.**2))'' | python)

Devuelve la memoria en GB.


grep MemTotal /proc/meminfo | awk ''{print $2}''

El número devuelto está en KB


phymem=$(awk -F":" ''$1~/MemTotal/{print $2}'' /proc/meminfo )

o usando gratis

phymem=$(free|awk ''/^Mem:/{print $2}'')

o usando caparazón

#!/bin/bash while IFS=":" read -r a b do case "$a" in MemTotal*) phymem="$b" esac done <"/proc/meminfo" echo $phymem