Barra de Progresso com Shell Script
Publicado por Kleilson dos Santos (última atualização em 04/07/2020)
[ Hits: 3.209 ]
Homepage: https://github.com/KleilsonSantos/Shell-Script/
Download barra-de-progresso.sh
Gerando uma barra de progresso com shell script.
#!/bin/bash #-------------------------------------------------------------------- # Name Script: script-barra_de_progresso.sh # Information: https://github.com/KleilsonSantos/Shell-Script # Creation in: June 2, 2020 # Author: Kleilson Santos <canalnovoti@gmail.com> # Description: Criando barra de progresso # License: GPL v3 # Version: 0.1.5 #-------------------------------------------------------------------- # Declarando variável _ARRAY, o parâmetro "-r" indica # que a variável e apenas leitura (read) declare -r _ARRAY=(/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / /) # Declarando variável _BAR_TYPE, o parâmetro "-r" indica # que a variável e apenas leitura (read) #declare -r _BAR_TYPE_1="░▒▓█▓▒░" #declare -r _BAR_TYPE_2="⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏" #declare -r _BAR_TYPE_3="◒◐◑" #declare -r _BAR_TYPE_4=":(:|:):D" #declare -r _BAR_TYPE_5="◇◈◆" #declare -r _BAR_TYPE_6="⚬⚭⚮⚯" #declare -r _BAR_TYPE_7="##############################" #declare -r _BAR_TYPE_8="..........................." #declare -r _BAR_TYPE_9="============================" #declare -r _BAR_TYPE_10="------------------------------" declare -r _BAR_TYPE="##############################" # Declarando variável _TOTAL, o parâmetro "-r" indica # que a variável e apenas leitura (read) declare -r _TOTAL=${#_ARRAY[@]} # Esconde o cursor tput civis -- invisible # Simulando carregamento de um comando executando echo "Loading..." for i in "${!_ARRAY[@]}"; do #statements # Calculando a porcentagem do loop. porc=$(((($i+1) * 100) / _TOTAL)) # Calcula o ultimo caracter da barra baseado na porcentagem. bar=$((($porc * _TOTAL) / 100)) #Simulando um comando rodando sleep 0.1 # Mostrando a porcentagem da barra de progresso. # Flag -n -> Manter o cursor na mesma linha. # Flag -e -> Voltar o cursor no inicio da linha. # \\r -> Progressão da barra em uma única vez. # Cores na saida da barra de progresso # \e[01;32m -> Cor Verde # \e[01;37m -> Cor Branca echo -n -e "\\r\e[01;32mProgress...$porc%\e[01;37m[${_BAR_TYPE:0:$bar}]" done # Pulando linha após termino do barra de progresso echo "" # Mostra o cursor tput cnorm -- normal tput sgr0
Apagando 2 linhas do fim de um arquivo
Instalação do Microsoft Edge no Linux
Script de Instalação de Layer7 no CentOS 6.0
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (0)
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)