Pular para o conteúdo

Cronometro em shell

Fiz para agradar a esposa, ela queria algo para controlar o tempo que fica estudando, como eu estava brincando com shell acabei topando fazer.

Com certeza existe algo algo mais útil, mais que mal tem né ;-)

Obs.: Não mede o tempo precisamente pois há a perda nos cálculos e demais comandos usados, mas para um ser humano é algo quase imperceptível, felizmente.

Agradeço ao @SMarcell que citou o stty no tópico http://www.vivaolinux.com.br/topico/Shell-Script/Capturar-teclar-quando-presionada, que usei para permitir capturar a entrada via telado sem pausar o script.

Espero que gostem.
Raimundo Alves Portela rai3mb
Hits: 14.104 Categoria: Shell Script Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Fiz para agradar a esposa, ela queria algo para controlar o tempo que fica estudando, como eu estava brincando com shell acabei topando fazer.

Com certeza existe algo algo mais útil, mais que mal tem né ;-)

Obs.: Não mede o tempo precisamente pois há a perda nos cálculos e demais comandos usados, mas para um ser humano é algo quase imperceptível, felizmente.

Agradeço ao @SMarcell que citou o stty no tópico http://www.vivaolinux.com.br/topico/Shell-Script/Capturar-teclar-quando-presionada, que usei para permitir capturar a entrada via telado sem pausar o script.

Espero que gostem.
Download cronometro.sh Enviar nova versão

Esconder código-fonte

#!/bin/bash
# cronometro em shell
# Desenvolvido por: Raimundo Portela - rai3mb@gmail.com
# Objetivo: Agradar a esposa, ela queria algo para controlar o tempo que fica 
# estudando, como eu estava brincando com shell acabei topando fazer.
# Deve ter algo mais útil, mais que mal tem né ;-)
# Obs.: Não mede o tempo precisamente pois ha a perda nos calculos e demais comandos
# para um ser humano é algo quase imperceptível, felizmente.
#------------------------------------------------------------------------------
s=00
m=00
h=00

tecla=""

function _tela() {
clear
echo "
--------------------------------------------------------------------------------
                                   o ~ o
                                 /   v   \\
                     ----------ooO------Ooo------------
                            [ Relógio Shell ]        "
printf "                                %02dh:%02dm:%02ds          " $h $m $s
echo -e "\n                            [ Viva o Linux! ]        
                     ----------------------------------
                                ^       ^
--------------------------------------------------------------------------------"
  echo ":: 'p' para pausar, 'c' para continuar e 's' para sair ::"
}

function _relogio() {
    _tela
  sleep 1
  s=$((s+1))
  [ $s -eq 60 ] && m=$((m+1)) && s=00
  [ $m -eq 60 ] && h=$((h+1)) && m=00
}

function _pausar() {
while :
do
    _tela
    sleep 1
    read tecla
    [ "$tecla" = "c" ] && clear && break
done
}

function _main() {

# Poe o terminal em modo especial de interpretacao de caracteres
stty -echo -icanon min 0

while :
do
    [ "$tecla" = "s" ] && break
    [ "$tecla" = "p" ] && _pausar
    _relogio
    read tecla
done

# Restaura o modo padrao
stty sane

exit 0
}
_main

Script recolher log's servidor

Script para criação de usuarios.

slacklibre - Seu Slackware 100% Livre

mkeggdrop e mkpsybnc

estoque.sh - Gerenciamento de estoque/almoxarifado

#1 Comentário enviado por rainingblood em 30/09/2011 - 11:15h
uhahua daora!
#2 Comentário enviado por ismael_farias em 02/10/2011 - 21:42h
Script show de bola!
#3 Comentário enviado por albfneto em 03/10/2011 - 15:16h
Olha, cronômetro é util sim! , Favoritado.
#4 Comentário enviado por removido em 23/10/2011 - 19:53h
Gostei disso!
Vou usar bastante.

Favoritado também.
#5 Comentário enviado por mfrlinux em 06/01/2015 - 09:56h
Valeu, parabéns.
#7 Comentário enviado por richards em 03/12/2018 - 09:16h
Olá Raimundo!
Muito bom o script!
Iremos usar aqui.

Abcs,
Ricardo

Contribuir com comentário

Entre na sua conta para comentar.