Barra de Progresso com Shell Script
Publicado por Kleilson dos Santos (última atualização em 04/07/2020)
[ Hits: 3.275 ]
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
Atualização automática do Slackware
Limpar o lixo das caixas de e-mail dos usuários que usam Maildir...
mPlayRecTv - assista e grave a programação da TV com MPlayer
Instalação do Layer7 e compilação do kernel (automático)
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Instalando partes faltantes do Plasma 6
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Estou tentando ser legalista, mas tá complicado! (9)
espelhar monitores nao funciona (2)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (1)









