Validar memória RAM e swap
Publicado por euteste da silva (última atualização em 24/11/2014)
[ Hits: 5.393 ]
Fiz esse script para trazer informações do uso da memória RAM e swap de forma mais amigável.
#!/bin/bash function desenharBarra(){ msgMem=$1 valMem=$2 pctVal=$3 case "$pctVal" in [0-9]) strBar="[ # - - - - - - - - - ]" ;; 1[0-9]) strBar="[ # # - - - - - - - - ]" ;; 2[0-9]) strBar="[ # # # - - - - - - - ]" ;; 3[0-9]) strBar="[ # # # # - - - - - - ]" ;; 4[0-9]) strBar="[ # # # # # - - - - - ]" ;; 5[0-9]) strBar="[ # # # # # # - - - - ]" ;; 6[0-9]) strBar="[ # # # # # # # - - - ]" ;; 7[0-9]) strBar="[ # # # # # # # # - - ]" ;; 8[0-9]) strBar="[ # # # # # # # # # - ]" ;; 9[0-9]) strBar="[ # # # # # # # # # # ]" ;; esac echo "$msgMem ($pctVal%) $strBar $valMem" } while read linha; do campo1=$(echo $linha | cut -d " " -f1) if [ "$campo1" == "MemTotal:" ]; then MemTotal=$(echo $linha | cut -d " " -f2); fi if [ "$campo1" == "MemFree:" ]; then MemFree=$(echo $linha | cut -d " " -f2); fi if [ "$campo1" == "Buffers:" ]; then Buffers=$(echo $linha | cut -d " " -f2); fi if [ "$campo1" == "Cached:" ]; then Cached=$(echo $linha | cut -d " " -f2); fi if [ "$campo1" == "SwapTotal:" ]; then SwapTotal=$(echo $linha | cut -d " " -f2); fi if [ "$campo1" == "SwapFree:" ]; then SwapFree=$(echo $linha | cut -d " " -f2); fi done < /proc/meminfo MemUsed=$(($MemTotal-$MemFree)) # Calculando o percentual memoria fisica PctMemFree=$(( $MemFree * 100 / $MemTotal)) PctMemUsed=$(( 100 - $PctMemFree)) # Calculando o percentual do swap. PctSwapFree=$(( $SwapFree * 100 / $SwapTotal)) PctSwapUsed=$((100 - $PctSwapFree)) # Transformacao para Mbytes MemTotalMB=$(( $MemTotal / 1024)) MemUsedMB=$(( $MemUsed / 1024)) MemFreeMB=$(( $MemFree / 1024)) # Transformacao para Mbytes swap SwapTotalMB=$(( $SwapTotal / 1024)) SwapFreeMB=$(( $SwapFree / 1024 )) SwapUsedMB=$(( $SwapTotalMB - $SwapFreeMB )) printf "Memory Total: %s %s\n" $MemTotalMB "MB" desenharBarra "Used" "${MemUsedMB} MB" "$PctMemUsed" desenharBarra "Free" "${MemFreeMB} MB" "$PctMemFree" printf "\nSwap Memory : %s %s\n" $SwapTotalMB "MB" desenharBarra "Used" "${SwapUsedMB} MB" "$PctSwapUsed" desenharBarra "Free" "${SwapFreeMB} MB" "$PctSwapFree" echo date
Instalador de Código Fonte - Linha de Comando
Monitorando espaço em disco com IP dinâmico.
Instalador .tar.bz2 com menu gráfico Zenity
Firewall para Compartilhamento de Conexão 3G
Fluxbox: Wallpapers aleatórios
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (5)
Problema Envio email GLPI Versao 10.0.15 (1)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (25)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba