Gerenciamento de software e hardware de desktop
Publicado por Amaury Borges Souza (última atualização em 26/09/2019)
[ Hits: 5.374 ]
Homepage: https://amaurybsouza.medium.com/
Esse script tem por objetivo mostrar as informações básicas de hardware e software do equipamento, tais como processador, memória, kernel, endereço de rede, serial number do desktop. Foi implementado para utilização em sistemas Debian/Ubuntu. Já estou trabalhando em outra versão que seja compatível com CentOS/Fedora.
#!/usr/bin/env bash 2 # ------------------------------------------------------------------------ # 3 # Script Name: hardware_desktop.sh 4 # Description: Show informations about machine hardware. 5 # Written by: Amaury Souza 6 # Maintenance: Amaury Souza 7 # ------------------------------------------------------------------------ # 8 # Usage: 9 # $ ./hardware_desktop.sh 10 # ------------------------------------------------------------------------ # 11 # Bash Version: 12 # Bash 4.4.19 13 # ------------------------------------------------------------------------ # 14 15 function menuprincipal () { 16 clear 17 echo " " 18 echo HARDWARE MACHINE INFORMATION $0 19 echo " " 20 echo "Escolha uma opção abaixo para começar! 21 22 1 - Verificar processador do desktop 23 2 - Verificar kernel do sistema 24 3 - Verificar softwares instalados 25 4 - Versão do sistema operacional 26 5 - Verificar memória do equipamento 27 6 - Verificar serial number 28 7 - Verificar IP do sistema 29 0 - Sair do menu" 30 echo " " 31 echo -n "Opção escolhida: " 32 read opcao 33 case $opcao in 34 1) 35 function processador () { 36 TIME=2 37 CPU_INFO=`cat /proc/cpuinfo | grep -i "^model name" | cut -d ":" -f2 | sed -n '1p'` 38 echo "Modelo de CPU: $CPU_INFO" 39 sleep $TIME 40 } 41 processador 42 read -n 1 -p "<Enter> para menu principal" 43 menuprincipal 44 ;; 45 46 2) 47 function kernel () { 48 #Para sistemas RED HAT: cat /etc/redhat-release 49 KERNEL_VERSION_UBUNTU=`uname -r` 50 KERNEL_VERSION_CENTOS=`uname -r` 51 if [ -f /etc/lsb-release ] 52 then 53 echo "Versão do kernel: $KERNEL_VERSION_UBUNTU" else 55 echo "Versão do kernel: $KERNEL_VERSION_CENTOS" 56 fi 57 } 58 kernel 59 read -n 1 -p "<Enter> para menu principal" 60 menuprincipal 61 ;; 62 63 3) 64 function softwares () { 65 #while true; do (antes eu estava usando esse recurso para controlar o menu, depois para corrigir adicionei uma function) 66 TIME=2 67 echo " " 68 echo "Escolha uma opção abaixo para listar os programas! 69 70 1 - Listar programas do Ubuntu 71 2 - Listar programas do Fedora 72 3 - Instalar programas padrões 73 4 - Voltar ao sistema" 74 echo " " 75 echo -n "Opção escolhida: " 76 read alternative 77 case $alternative in 78 1) 79 echo Listando todos os programas do sistema Ubuntu... 80 sleep $TIME 81 dpkg -l > /tmp/programas.txt 82 echo A lista de programas foi gerada e está disponível no /tmp do seu sistema 83 sleep $TIME 84 echo " " 85 echo "Você será redirecionado para o menu inicial do programa!" | tr [a-z] [A-Z] 86 sleep $TIME 87 ;; 88 2) 89 echo Listando todos os programas do sistema Fedora... 90 sleep $TIME 91 yum list installed > /tmp/programas.txt 92 echo A lista de programas foi gerada e está disponível no /tmp 93 sleep $TIME 94 ;; 95 3) 96 echo Instalando pogramas padrões... 97 LIST_OF_APPS="pinta brasero gimp vlc inkscape blender filezilla" 98 #usar o comando aptitude do Linux para tratar o loop de programas. 99 apt install aptitude -y 100 aptitude install -y $LIST_OF_APPS 101 ;; 102 4) 103 echo Voltando para o menu principal... 104 sleep $TIME 105 ;; 106 esac 107 #done 108 } 109 softwares 110 menuprincipal 111 ;; 112 113 4) 114 function sistema () { 115 VERSION=`cat /etc/os-release | grep -i ^PRETTY` 116 if [ -f /etc/os-release ] 117 then 118 echo "A versão do seu sistema é: $VERSION" 119 else 120 echo "Sistema não suportado" 121 fi 122 } 123 sistema 124 read -n 1 -p "<Enter> para menu principal" 125 menuprincipal 126 ;; 127 128 129 5) 130 function memory () { 131 TIME=2 132 MEMORY_FREE=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 4` 133 MEMORY_TOTAL=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 2` 134 MEMORY_USED=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 3` 135 echo Verificando a memória do sistema... 136 echo "A memória livre é: $MEMORY_FREE" 137 sleep $TIME 138 echo "A memória total é: $MEMORY_TOTAL" 139 sleep $TIME 140 echo "A memória usada é: $MEMORY_USED" 141 } 142 memory 143 read -n 1 -p "<Enter> para menu principal" 144 menuprincipal 145 ;; 146 147 6) 148 function serial () { 149 SERIAL_NUMBER=`dmidecode -t 1 | grep -i serial` 150 echo $SERIAL_NUMBER 151 } 152 serial 153 read -n 1 -p "<Enter> para menu principal" 154 menuprincipal 155 ;; 156 157 7) 158 function ip () { 159 IP_SISTEMA=`hostname -I` 160 echo O IP do seu sistema é: $IP_SISTEMA 161 } 162 ip 163 read -n 1 -p "<Enter> para menu principal" 164 menuprincipal 165 ;; 166 167 0) 168 echo Saindo do sistema... 169 sleep 2 170 exit 0 171 ;; 172 173 *) 174 echo Opção inválida, tente novamente! 175 ;; 176 esac 177 } 178 menuprincipal
FTP Linux-Windows Baseado na Data Atual
Instalando a última versão estável do Eclipse com uma única linha
Software backup, restore, leitura de logs, com dialog
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Excluir banco de dados no xampp (1)
phpmyadmin não abre no xampp (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta