Relógio em posições aleatórias
Publicado por Sandro Marcell 20/10/2008 (última atualização em 24/09/2009)
[ Hits: 7.592 ]
Homepage: http://sanmarcell.wordpress.com
Download rand_clock (versão 2)
Scriptzinho que fiz e mostra um relógio em tempo real e em posições aleatórias no terminal. Não é grande coisa, mas foi legal de fazer! =)
Uma screenshot do script:
http://www.vivaolinux.com.br/screenshot/Fluxbox-Relogio-no-terminal/
Falou!!!
;)
Versão 2 - Enviado por Sandro Marcell em 24/09/2009
Changelog: - Revisão, correção e atualização parcial do código;
- Adição de metódo (POG!) para alteração de cor durante as mudanças de posição do relógio.
#!/bin/zsh -f
#
# Exibindo um relogio em posicoes aleatorias no terminal.
#
# Sandro Marcell (sandro_marcell@yahoo.com.br)
# Boa Vista, Roraima - 26/08/2008.
#
# Obs.:
# - As horas sao mostradas em tempo real;
# - A cada nova execucao do script, o relogio assume uma cor diferente;
# - Para sair, pressione <Ctrl+c>;
# - Mais detalhes: 'man zsh'.
# <Ctrl+c> pressionado ou sinal 'kill' recebido, finalizam o script.
# 'kill -9 $!' encerra a funcao executada em segundo plano:
trap 'kill -9 $! ; reset ; break ; bye' 1 2 3 15
# Modulos necessarios:
zmodload -i zsh/terminfo
zmodload -i zsh/datetime
# 'Semeando' valor da variavel RANDOM:
RANDOM=$$
# Tempo (em segundos) antes de mudar o relogio de posicao:
tmp=5
# Quantidade padrao de linhas no terminal corrente:
qlin=$terminfo[lines]
# Quantidade padrao de colunas no terminal corrente.
# Para evitar que a area do relogio exceda o numero
# de colunas do terminal, foi subtraido 8 da quantidade
# padrao de colunas.
qcol=$(($terminfo[cols] - 8))
# Funcao que definira as posicoes do relogio na tela:
function __defpos__
{
# Limpando a tela:
echoti clear
# Loop de execucao:
while :
do
# Nova posicao do cursor em linha:
local linha=$(((RANDOM * qlin / 32767) + 1))
# Nova posicao do cursor em coluna:
local coluna=$(((RANDOM * qcol / 32767) + 1))
# Reposicionando cursor:
echoti cup $linha $coluna
# Aguarde...
sleep $tmp
echoti clear
done
}
# Executando a funcao '__defpos__' em segundo plano, para que seja
# possivel exibir o relogio no terminal.
__defpos__ &
# Setando modo negrito e tornando cursor invisivel:
echoti bold
echoti civis
# Carregando funcao built-in 'colors':
autoload -U colors
colors
# Setando cor aleatoria para o relogio:
cores=(red green yellow blue cyan magenta white)
setcor="$cores[$(((RANDOM * 7 / 32767) + 1))]"
# Loop responsavel por exibir o relogio:
while :
do
# Salvando posicao do cursor:
echoti sc
# Mostrando relogio:
print -Pn "$fg[$setcor]$(strftime "%T" $EPOCHSECONDS)"
# Restaurando posicao do cursor:
echoti rc
# Aguarde... antes de atualizar o relogio:
sleep 1
done
# Fim
Script que insere cor nos seus comandos :)
Soma valores de uma lista (calculo notas, pontos, etc)
Script para configurar a rede no linux...
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Erro ao enviar arquivos para o Storage Synology NAS (0)
Eaí? Já programou no windows? (1)
Instalar Dual Boot, Linux+Windows. (6)
Conky, alerta de temperatura alta (17)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









