Mostrando informações sobre o sistema

Publicado por Sandro Marcell 01/08/2007

[ Hits: 5.041 ]

Homepage: http://sanmarcell.wordpress.com

Download info.SH




Simples script que mostra informações sobre o sistema. Usa a interface dialog.

  



Esconder código-fonte

#!/bin/sh
#
# Algumas informações sobre o usuário e o sistema.
# 
# Sandro Marcell (sandro_marcell@yahoo.com.br)
#
# Uso: nome_script -s/u
# Onde:
# -s Apresenta informações sobre o sistema
# -u Apresenta informações sobre o usuário
#
# Este script está meio tosco, por isso se puder melhorá-lo, faça-o! =)

# Realçando saída do comando 'echo':
Echo () { echo -e "\e[1m$*\e[m" ; }

# Checando parâmetros:
[ $# -eq 0 ] && Echo "Uso: $0 -s/u" && exit 

case $1 in 
   -s | -S) {
   ## Informações sobre o sistema ##
   
   # Distro:
   A=$(sed 's/=/ /g' /proc/cmdline | awk '{print $3}')
   # Versão do kernel
   B=$(uname -rm)
   # Data da compilação:
   C=$(uname -v | sed 's/#[[:digit:]]// ; s/^[ \t]*//')
   # Processador:
   D=$(sed -n '/model name/p' /proc/cpuinfo |\
   sed 's/\t// ; s/model name:// ; s/^[ \t]*//')
   # Total de memória RAM (em MB):
   E=$(free -m | sed '2!d' | awk '{print $2}')
   # Placa de vídeo:
   F=$(glxinfo | sed '22!d ; s/.\{24\}//')
   # Placa de som:
   G=$(sed '3!d' /etc/modprobe.conf | awk '{print $3}')
   # Informações sobre o hd:
   H=$(dmesg | sed -n '/DISK drive/p' | sed 's/.\{4,5\}//')
   # Quantidade de paritções:
   I=$(awk '{print $4}' /proc/partitions |\
   sed ':A ; $!N ; s/\n/ /g ; tA ; s/name// ; s/^[ \t]*//')
   # Tamanho da partição Linux:
   J=$(df -hT | sed '2!d' | awk '{print $1,$3,$6}')
   # Sistema de arquivos:
   L=$(df -hT | sed '2!d' | awk '{print $2}')
   # Partição swap:
   M=$(sed -n '2p' /proc/swaps | awk '{print $1,$3}')

   # Montando a janela:
   dialog --colors --backtitle "\ZbInfo.sh" --no-cancel \
          --ok-label "Fechar" --title "Informações sobre o sistema" \
          --menu "Visualizando..." 0 0 0 \
          "Distro:" "$A" \
          "Versão do kernel:" "$B" \
          "Data de compilação:" "$C" \
          "Processador:" "$D" \
          "Total de memória RAM:" "$E (MB)" \
          "Vídeo:" "$F" \
          "Som:" "$G" \
          "Disco rígido:" "$H" \
          "Partições disponíveis:" "$I" \
          "Partição Linux:" "$J (em uso)" \
          "Sistema de arquivos:" "$L" \
          "Partição swap:" "$M (MB)" 2> /dev/null
       } ;;
   
   -u | -U) {
   
   ## Informações sobre o usuário ##
   
   dialog --colors --backtitle "\ZbInfo.sh" --no-cancel \
          --ok-label "Fechar" --title "Informações sobre o usuário" \
          --menu "Visualizando..." 0 0 0 \
          "Usuário:" "$USER" \
          "Diretório padrão:" "$HOME" \
          "Terminal padrão:" "$TERM" \
          "Shell padrão:" "$SHELL" \
          "Idioma:" "$LANGUAGE" \
          "Tempo de execução da sessão (HH:MM):" \
          "$(uptime | sed 's/,//g' \
          | awk '{print $3}')" 2> /dev/null
       } ;;

   *) Echo "Uso: $0 -s/u" ; exit
   ;;
   
   esac
# Fim    

Scripts recomendados

Remover linhas duplicadas em arquivos

Instalação Zabbix-agent CentOS 6

calculadora

Fazendo os leds piscar

Interface para tarefas básicas


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts