Barra de progresso em shell
Publicado por Daniel Miyagi (última atualização em 10/02/2011)
[ Hits: 16.366 ]
Estive procurando estes dias alguma forma de criar uma barra de progresso em shell script, encontrei um código e fiz algumas alterações que acredito ter ficado melhor. Espero que tenha utilidade para alguém.
Falou!
#!/bin/bash
# Daniel Miyagi (j4p0n3g0)
# 24/01/2011
array[1]=$(echo "\\")
array[2]=$(echo "|")
array[3]=$(echo "/")
array[4]=$(echo "-")
SPACE="-"
LIMITE=$(tput cols)
COLUNA=$((LIMITE - 15))
INDICE=0
CONTADOR=0
PORCENTAGEM2=0
clear
while true ; do
INDICE=$(echo "$INDICE + 1" | bc)
tput cup 0 0
echo "$PORCENTAGEM2% - ["
SPACE=$(echo "$SPACE-")
tput cup 0 8
echo -e "\e[31;1m$SPACE>\e[m\n"
tput cup 0 $COLUNA
echo "] ${array[$INDICE]} - Progresso"
sleep 0.01
CONTADOR=$( expr 1 + $CONTADOR)
if [ $INDICE = 4 ]; then
INDICE=0
fi
TAMANHO2=$( echo $SPACE | wc -c )
TAMANHO=$( echo "$TAMANHO2 - 1 " | bc )
COLUNA2=$( expr $COLUNA - 9 )
[ $TAMANHO -eq $COLUNA2 ] && break
TAMANHO3=$(echo "$TAMANHO + 10" | bc)
PORCENTAGEM=$(echo "$TAMANHO3 * 100" | bc )
PORCENTAGEM2=$(echo "$PORCENTAGEM / $COLUNA" | bc )
done
Limpar o lixo das caixas de e-mail dos usuários que usam Maildir...
Rotina para backup diário, semanal e mensal (exemplo para Firebird)
Ajuste Dinâmico do Governador de CPU no Linux
Gerenciador Simples de Empresa
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando COSMIC no Linux Mint
Turbinando o Linux Mint: o poder das Nemo Actions
Inteligência Artificial no desenvolvimento de software: quando começar a usar?
[Resolvido] Algo deu errado ao abrir seu perfil
Usando o VNSTAT para medir o seu consumo de internet
Habilitando clipboard manager no ambiente COSMIC
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (2)
Quando vocês pararam de testar distros? (10)









