Teste de memória RAM

Publicado por marcelo cavalca filho (última atualização em 11/10/2013)

[ Hits: 11.416 ]

Homepage: https://www.facebook.com/Colgatera

Download memory_test.bsh




Olá amigos do VOL!

Se você é uma daquelas pessoas que gostam de ficar monitorando a quantidade de RAM que está sendo utilizada mas que acha inútil ficar soltando um "free -m" a todo momento, assim como eu, eu tenho a solução!

Com essa ideia eu montei esse script que é muito simples e deixa exposto a todo momento no terminal a quantidade de memória RAM normal que está sendo usada e a memória swap que está sendo usada também, exibindo a porcentagem e o usado/total.

É um script interessante se você deseja deixar um terminal apenas para ficar monitorando a memória. :P
Sem mais delongas, segue o código:

  



Esconder código-fonte

#!/bin/bash

#==========================================================================================#
# Author: Marcelo Cavalca Filho                                                            |
# Date: 10/10/2013                                                                         |
# Original file name: memory_test.bsh                                                      |
# What the script do?                                                                      |
# A: It show the percentage and the ammount of used memory, normal and swap, at real time. |
#==========================================================================================#

clear
echo -e "#========================================= MEMORY TEST ===========================================#\n"
tput sc
RED='\e[0;31m'
NORMAL='\e[0m'
tput civis
stty -echo
while :; do

    tput rc
    # { Set variable values
    TOTAL_MEM=`free -m | cut -c15-20 | head -2 | tail -1 | sed 's/ //g'`
    TOTAL_SWAP=`free -m | cut -c15-20 | head -4 | tail -1 | sed 's/ //g'`

    USED_MEM=`free -m | cut -c26-30 | head -2 | tail -1 | sed 's/ //g'`
    USED_SWAP=`free -m | cut -c26-30 | head -4 | tail -1 | sed 's/ //g'`

    let PERC_USED_MEM=(${USED_MEM}*100)/${TOTAL_MEM}
    let PERC_SWAP_MEM=(${USED_SWAP}*100)/${TOTAL_SWAP}
    # }


    # { RED to warn the user FREE_MEM
    if [ ${PERC_USED_MEM} -ge 85 ]; then
    echo -ne "${RED}"
    else
    echo -ne "${NORMAL}"
    fi
    # }


    # { Print results on screen
    echo -ne "\r  Memory usage now: ["
    let ADJ_PERC_MEM=${PERC_USED_MEM}/2
    for I in `seq 1 $ADJ_PERC_MEM`; do
    echo -ne "#"
    done
    let ADJ_PERC_MEM=50-${ADJ_PERC_MEM}
    for I in `seq 1 $ADJ_PERC_MEM`; do
    echo -ne "."
    done
    echo -ne "] $PERC_USED_MEM% - ${USED_MEM} / ${TOTAL_MEM} (Mb)   "
    # }


    # { RED to warn the user SWAP_MEM
    if [ ${PERC_SWAP_MEM} -ge 85 ]; then
    echo -ne "${RED}"
    else
    echo -ne "${NORMAL}"
    fi
    # }


    # { Print results on screen
    echo -ne "\n  SWAP usage:       ["
    let ADJ_PERC_MEM=${PERC_SWAP_MEM}/2
    for I in `seq 1 $ADJ_PERC_MEM`; do
    echo -ne "#"
    done
    let ADJ_PERC_MEM=50-${ADJ_PERC_MEM}
    for I in `seq 1 $ADJ_PERC_MEM`; do
    echo -ne "."
    done
    echo -ne "] $PERC_SWAP_MEM% - ${USED_SWAP} / ${TOTAL_SWAP} (Mb)   "
    # }

    echo -ne "${NORMAL}\n\n\t\t\t\t\t('q' to exit)\n\n"

    # { If the user wishes to end the script...
    read -s -t 0.1 -n 1 INPUT
    if [ $INPUT = "q" ] 2>/dev/null; then
    echo -e "\n\nExiting...\n"
        tput cnorm
        stty echo
        exit 0
    fi
    # }

    echo -ne "#=================================================================================================#"

done

Scripts recomendados

Scrip para criação de arquivos em série

letras de musica do banshee

Listar bolsas disponíveis no Senac

Jogo campo minado em Shell Script

Limpar pacotes com versões antigas do cache do apt


  

Comentários
[1] Comentário enviado por Williamm em 04/11/2013 - 11:20h

Muito bom, parabéns!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts