Barra de progresso em shell
Publicado por Daniel Miyagi (última atualização em 10/02/2011)
[ Hits: 16.160 ]
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
Bashblog v1.0 0 - cria um microblog em HTML5
Monitorando seus daemon de impressão...
Como gerar um podcast a partir de um livro em PDF
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como Instalar o Microsoft Teams no Linux Ubuntu
Músicas de Andrew Hulshult no DOOM (WAD)
Instalar o Apache, MySQL e PHP no Oracle Linux 8
Bloqueando telemetria no Deepin 23.1
Como converter imagens PNG/JPEG para SVG em linha de comando
Mudar ícone do favorito "encerrar sessão" do Debian 12.10, c... (3)
Java é uma linguagem de brinquedo? (9)
Rejeição de acesso ao servidor (1)