Los comandos de Bash "free like" para Mac OSX.
Esta es la segunda reedición de esta publicación. Al principio, tengo dos -1
. Una porque no estaba describiendo en inglés, se corrige. La otra porque usé gawk
(que no es parte de una instalación estándar de OS X), también está corregida, ahora uso awk
. Los -2
siguen ahí ;-). ¿Lo mejor es quizás ahora probar y evaluar los comandos ellos mismos?
Revisé mi primera idea de construir solo un comando orientado al usuario final con una pantalla amigable y altamente configurable, hice dos:
-
free-like.sh
un script orientado siempre al "usuario final", con más precisión, una pantalla "amigable" y configurable, pero con más cálculos y consumo de recursos,
-
free-like-raw.sh
, un desarrollador orientado a comandos ahora, sysadmin, etc., con menos cómputo y consumo de recursos, pero también con menos precisión, menos "amigable".
Los datos para la memoria física se extraen de los resultados del comando vm_stat
(que devuelve los resultados en tamaño de bloque). La imprecisión resultante de la transformación en bytes (número_de_bloques * tamaño de bloque, el valor predeterminado de los cálculos) estará entre 0 y lt; El tamaño del bloque.
Los datos para la memoria virtual se toman del comando top
. La imprecisión aquí está vinculada a la unidad de referencia del comando top
: kilo, mega, giga.
Los cálculos se realizan utilizando awk
que respeta redondeado (a diferencia de bc
). awk
también es más rápido que bc
.
Puede ver el script de prueba aquí: enlace
Puede ver los resultados de los comandos en bytes (predeterminado), en kilo, mega o giga, con x lugares decimales en el caso de free-like.sh y si solicita la visualización en mega ou giga.
Los scripts son demasiado largos para una publicación, pero puedes encontrarlos en este artículo de mi blog: enlace
El artículo está en francés, pero muestra un ejemplo de visualización para cada comando y su ayuda integrada ( ./free-like.sh -h
y ./free-like-raw.sh -h
), en inglés. Estas ayudas describen completamente los comandos. El artículo muestra también los códigos.
El inglés no es mi lengua materna. Si alguien quiere corregir errores en la ayuda integrada, él es bienvenido;).
el tuyo.