Contagem regressiva no terminal
Publicado por Fábio Berbert de Paula em 16/06/2020
[ Hits: 4.866 ]
Blog: https://mestrefabio.com
regressiva() { #forma de uso: #regressiva HH:MM:SS. Exemplo: # #regressiva 01:30:00 # #verificar se o parâmetro passado está correto RETORNO=`echo $1 | sed -E 's/[0-9]{2}:[0-9]{2}:[0-9]{2}/true/'` #se parâmetro estiver errado, imprimir mensagem de ajuda e sair if [ "$RETORNO" != "true" ] then echo -e "\nForma de uso:\n\n\tregressiva HH:MM:SS\n\nExemplo:\n\n\tregressiva 01:00:00\n\n" return fi #armazenar valor original da variável de ambiente IFS local OLD_IFS="${IFS}" #IFS passa a ser ":" IFS=":" #variável ARR terá 3 elementos: hora, min, seg local ARR=( $1 ) #variável SECONDS será a soma dos segundos de todos os elementos local SECONDS=$(( (ARR[0] * 60 * 60) + (ARR[1] * 60) + ARR[2] )) #contagem inicial é a hora atual em segundos local START=$(date +%s) #contagem final é a hora atual em segundos + a qtd de segundos informada local END=$((START + SECONDS)) #inicializar a hora atual local CUR=$START while [[ $CUR -lt $END ]] do #atualizar a hora atual CUR=$(date +%s) #LEFT é quanto falta, END - CUR LEFT=$((END-CUR)) #imprimir quanto falta no formato HH:MM:SS printf "\r%02d:%02d:%02d" \ $((LEFT/3600)) $(( (LEFT/60)%60)) $((LEFT%60)) sleep 1 done #restaurar a IFS IFS="${OLD_IFS}" echo " " }
Como recuperar uma senha salva no Chrome ou Firefox
Comando find: expressões regulares e exclusão de diretórios
Automatizando o download de fotos de um determinado site
Coderbyte - teste seus conhecimentos em programação!
Python - UnicodeDecodeError: 'utf-8' codec can't decode byte [Resolvido]
Shell script - Gerenciador de processos
Conversão do catálogo de endereço do Thunderbird para usar no Mutt - Script
Acessando mais que 9 parâmetros em shell script
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
samba4 - 4.21 utilizar phpldapadmin (3)
Dica sobre iptables ACCEPT e DROP (7)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta