Script systeminfo
Aparência
Script que retorna na tela as principis informações sobre um sistema operacional GNU/Linux.
Para criá-lo:
vim script_systeminfo.sh
Cole o conteúdo abaixo
#!/bin/bash
#
echo " "
echo " #####################################"
echo " ##########################################"
echo "########### INFORMAÇÕES DO SISTEMA ###########"
echo " ##########################################"
echo " #####################################"
echo " "
echo "=============================================="
#
# Sistema Operacional
echo "SISTEMA OPERACIONAL: $(uname -o)"
#
# Distro e versão
if [ -f /etc/os-release ]; then
source /etc/os-release
echo "NOME DA DISTRO.....: $NAME"
echo "VERSÃO DA DISTRO...: $VERSION"
else
echo "NOME DA DISTRO.....: Não encontrado"
echo "VERSÃO DA DISTRO...: Não encontrado"
fi
#
# Hostname
echo "HOSTNAME...........: $(hostname)"
#
# Versão do Kernel
echo "VERSÃO DO KERNEL...: $(uname -r)"
#
# Uptime
echo "LIGADO DESDE.......: $(uptime -p)"
# Número de Pacotes instalados
if command -v dpkg >/dev/null 2>&1; then
echo "NÚMERO DE PACOTES..: $(dpkg -l | grep '^ii' | wc -l)"
elif command -v rpm >/dev/null 2>&1; then
echo "NÚMERO DE PACOTES..: $(rpm -qa | wc -l)"
elif command -v pacman >/dev/null 2>&1; then
echo "NÚMERO DE PACOTES..: $(pacman -Q | wc -l)"
else
echo "NÚMERO DE PACOTES..: Não suportado"
fi
# CPU
echo "CPU................: $(grep -m 1 'model name' /proc/cpuinfo | cut -d ':' -f 2 | sed 's/^ //')"
# Memória
total_mem=$(grep MemTotal /proc/meminfo | awk '{print $2}')
echo "MEMÓRIA TOTAL......: $(($total_mem / 1024)) MB"
# Uso da CPU
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}')
echo "USO DA CPU.........: $cpu_usage%"
# Uso da Memória
used_mem=$(grep MemAvailable /proc/meminfo | awk '{print $2}')
echo "USO DA MEMÓRIA.....: $((($total_mem - $used_mem) / 1024)) MB ($(awk "BEGIN {printf \"%.2f\", (($total_mem - $used_mem) / $total_mem) * 100}")%)"
# IP Local
echo "IP INTERNO.........: $(hostname -I | awk '{print $1}')"
# IP Público
ip_publico=$(curl -s ifconfig.me || echo "Não disponível")
echo "IP PÚBLICO.........: $ip_publico"
# Locale
echo "LOCALE.............: $(locale | grep LANG= | cut -d '=' -f 2)"
# Discos e Uso de Disco
echo "DISCOS E USO (%)...:"
echo "----------------------------------------------"
df -h | awk 'NR==1 || /^\/dev/ {print $0}'
echo "----------------------------------------------"
echo "=============================================="
echo "##############################################"
Não esquecendo que deve dar permissão de execução:
chmod +x script_systeminfo.sh
Para executar:
./script_systeminfo.sh