Instalador de programas
Publicado por Luciano Hanzo (última atualização em 26/11/2024)
[ Hits: 560 ]
Homepage: :(
Esse script ajuda na instalação inicial do sistema linux.
Lembre-se de colocar os programas dentro dos vetores ou criar um vetor novo e chamar no final do script.
Execute com :
sudo bash inicial_bash.sh ou sudo chmod +x inicial_bash.sh ; ./script.sh
Espero que esse script ajude a comunidade.
Farei mudanças futuras pelo github.
https://github.com/lucianohanzo/inicial_bash
#!/bin/bash # Instalação de programas iniciais. # Criador : LUCIANO PEREIRA DE SOUZA # REVISOR : LUCIANO PEREIRA DE SOUZA # OBS : Esse programa instala vários programas de uma vez, através de vetores. # Verifica se o usuário é root. USUARIO=$(whoami) if [ $USUARIO = "root" ];then echo "Bem vindo root!" ; echo else echo "Somente root!" echo "Tente \"sudo -i\" ou \"sudo $0\"" exit 1 fi # Verifica se tem internet. internet () { ping $1 -c2 > /dev/null 2>&1 if [ $? != 0 ]; then return 100 fi } # Verifica o gerenciador de pacotes. if [ -f /usr/bin/rpm ]; then Pacote="yum" elif [ -f /usr/bin/dpkg ]; then Pacote="apt" else echo "Gerenciador de pacotes não encontrado!" ; exit 1 fi # Cria o arquivo de log caso não exista. ArquivoLog=/var/log/instalador.log [ -f $ArquivoLog ] || \ sudo echo "> Data e Hora <| Situação | > Pacote" \ > $ArquivoLog # Lista de programas. # Os programas aqui estão armazenados em vetores. Gedit=("gedit" "gedit-plugins" "gedit-plugin-text-size") Windows=("wine" "q4wine") Navegadores=("falkon") Utilitarios=("vlc" "qbittorrent" "vim" "gparted" "thunderbird" "nautilus" \ "nemo" "gnome-font-viewer" "gnome-tweaks" "gdebi" "evince" \ "libreoffice") Edicao=("gimp" "inkscape" "audacity" "shotcut" "obs-studio") Idiomas=("libreoffice-l10n-pt-br" \ "thunderbird-l10n-pt-br" \ "firefox-esr-l10n-pt-br") # Limpador de log. # Deixa o arquivo de log com máximo de 1000 linhas. limpa_logs () { [ -f $ArquivoLog ] && \ Linhas=$(wc -l $ArquivoLog | cut -d" " -f1) && \ while [ $Linhas -gt 1000 ]; do sed -i "2d" $ArquivoLog > /dev/null Linhas=$(wc -l $ArquivoLog | cut -d" " -f1) done } # Função Principal insta_programas () { Vetor=("$@") for p in ${Vetor[@]}; do echo "Instalando : $p" internet www.google.com if [ $? = 100 ]; then echo -e "\nPacote $p não foi instalado." echo ">>> Sem acesso a internet ou sem DNS configurado. <<<" limpa_logs exit 2 fi sudo $Pacote install -y $p > /dev/null 2>&1 Status=$? ; Data=$(date "+%d-%m-%Y %H:%M:%S") if [ $Status = 0 ]; then echo "$Data | Instalado | > $p" >> $ArquivoLog else echo "$Data | Erro | > $p" >> $ArquivoLog fi done } mostra_log () { echo -e "\n\nFinal do arquivo de log em $ArquivoLog" tail -n 100 $ArquivoLog } # Chamada de funções insta_programas ${Gedit[@]} insta_programas ${Windows[@]} insta_programas ${Navegadores[@]} insta_programas ${Utilitarios[@]} insta_programas ${Edicao[@]} insta_programas ${Idiomas[*]} limpa_logs mostra_log
Script para criar usuarios Dialup
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Ubuntu 24 [ Wireless sendo atacada ] (9)
Como atribuir corretamente o CNES final baseado nas regras de certific... (2)