sys_info - exibe o status do sistema
Publicado por Pedro Fernandes (última atualização em 01/12/2020)
[ Hits: 3.215 ]
Homepage: https://github.com/PedroF37
Download 1583447892.sys_info (versão 2)
Download 1604712914.sys_info (versão 3)
Versão mais enxuta, limpa e menor de outro script meu chamado "status".
sys_info -- imprime na tela ou em arquivo de texto o status do sistema
infos: -- uptime, espaço de disco, espaço de arquivos, memória e temperatura
Ao visualizar na tela é aconselhado usar paginador -- less | more etc, ou no script na primeira vez que a função relatorio é chamada colocar o | paginador.
Versão 2 - Enviado por Pedro Fernandes em 05/03/2020
Changelog: 1 - "Embuti" a declaração case no corpo do if
no final do script. O if garante que
ou passa 0 ou 1 argumento apenas, e o case
garante que os argumentos são apenas -h ou -f
Estando separados não estava dando muito certo.
2 - Na parte que mostra a temperatura (sensors), removi o
pipe "| gawk", que não faz falta. Acho que estava
entusiasmado com o gawk e acabei por usar á toa.
Versão 3 - Enviado por Pedro Fernandes em 06/11/2020
Changelog: Versão 3.0 - Corrigido erro de mostragem de espaço no disco.
Ex.: se sda1 aparece como /dev/root, então não
mostrava. corrigi a regex, agora está - "/^\/dev\/[a-z]+[0-9]?/"
- Corrigido mostragem do uptime do sistema.
Reparei que no openSUSE o campo que mostrava o uptime
era o campo 4 e não o 3.
Expressão do gawk agora usa o 'FS=","' (field separator)
para mostrar o campo $1. (HH:MM:SS up HH:MM).
#!/bin/bash # # # sys_info -- imprime na tela ou em arquivo de texto # o status do sistema. # # # # # infos: -- uptime, espaço de disco, espaço de arquivos # memória e temperatura # # # # uso: -- status | status -f | status -h # Se for visualizado na tela é # aconselhado usar paginador (less|most) # status | most ou na primeira vez que # a função relatório é chamada perto do # final do script, colocar em frente da # chamada | more/most/less # # # # # autor -- pedro fernandes <pedrobfernandes32@protonmail.com> # # # # # Constantes # # SCRIPT=$(basename $0) DATA=$(date "+%d-%m-%Y %H:%M") DATA_LOG=$(date '+%d%m%y') TITULO="Relatório do Sistema para: $HOSTNAME" GERADO="Relatório Gerado: $DATA, por $USER" # # # Funcoes # # function uso { echo -e "Uso: $SCRIPT | $SCRIPT [ -f | -h ]\n" echo -e "Onde: \n" echo "-f para relatório ser salvo em arquivo no HOME" echo "-h para mostrar esta ajuda" echo -e "\nAo visualizar na tela use paginador:" echo -e "Ex: $SCRIPT | less\n" } # # function relatorio { echo -e "\n\t\t\t\t\t\t$TITULO\n" echo -e "\n\t\t\t\t\t\t$GERADO\n\n\n" # # uptime | gawk 'BEGIN {printf "Uptime do Sistema:" "\n"} {print $3 "\n"}' | sed 's/,$//' | sed 'N; s/\n/ /' # # echo -e "\n\nEspaço Ocupado no(s) disco(s):\n" df -h | gawk 'BEGIN { printf "Unidade" "\t\t" "Total" "\t" "Usado" "\t" "Disponivel" "\t" "Montd." "\n"} /dev.sd[a-z][1-9]/{print $1, "\t" $2, "\t" $3, "\t" $4, "\t\t" $6}' # # echo -e "\n\n\nOs 10 diretórios mais cheios no(s) home(s):\n" # if [ $UID -eq 0 ] then lista=/home/* else lista=$HOME fi # for dir in $lista do echo -e "\nDiretório $dir:\n" du -Sh $dir 2> /dev/null | sort -rh | sed '{11,$D; =}' | sed 'N; s/\n/ /' | gawk '{printf $1 ":" "\t" $2 "\t" $3 "\n"}' done # # echo -e "\n\n\nMemória do Sistema:\n" free -h | sed '$d' | sed '1d' | gawk 'BEGIN { printf "Total" "\t" "Usada" "\t" "Livre" "\t" "Buffer/Cache" "\t" "Disponivel\n"} {printf $2 "\t" $3 "\t" $4 "\t\t" $6 "\t" $7 "\n"}' # # echo -e "\n\n\nTempraturas atuais:\n" sensors | gawk '{printf $0 "\n"}' # # echo echo "É tudo." } # # # Inicio # # if [ $# -eq 0 ] then relatorio elif [ $# -gt 1 ] then echo "Demasiados argumentos..." sleep 2 clear uso exit 1 fi # # case $1 in -f) relatorio > $HOME/$SCRIPT-$DATA_LOG.log echo "O relatório foi salvo em: $HOME/$SCRIPT-$DATA_LOG.log" ;; -h) uso ;; esac # #
Criando pdf para impressão de livros
Abrir e redirecionar portas TCP em firewall iptables
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Remoção de propaganda com o programa Comskip[AJUDA] (4)
Instalação do drive do adaptador wiffi (5)