Barra de Progresso com Shell Script
Publicado por Kleilson dos Santos (última atualização em 04/07/2020)
[ Hits: 3.305 ]
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
Script para autenticar Speedy Business
Limpa comentários e linhas em branco nos arquivos de configuração (.conf)
Aplicando layer7 sem digitar uma linha de código sequer
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
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
Opções secretas em tema do Cinnamon
Como mapear unidade de rede no Linux
Como quebrar senha usando john the ripper
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (1)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (1)









