shell Scrpit Data e hora [RESOLVIDO]

1. shell Scrpit Data e hora [RESOLVIDO]

Nerd Leigo
NERDS LEIGO

(usa Ubuntu)

Enviado em 19/09/2011 - 10:26h

gente me ajudem sou iniciante em shell script preciso de ajuda

*Fazer um script que imprima horas e minutos no
formato 12 horas (ex. 7:00 am/pm)

*Escreva um script que dê bom dia, boa tarde ou boa
noite, de acordo com a hora apresentada pelo comando
date.

desde de já fico muito grato Obrigado


  


2. MELHOR RESPOSTA

Gustavo Hendrigo Marcon
hendrigo

(usa Suse)

Enviado em 19/09/2011 - 11:15h

para imprimir horas e minutos no formato 12 horas

#!/bin/bash
date +%r



Script de bom dia etc..
Sem usar awk!

#!/bin/bash

if [ "$(date +%k)" -ge 6 -a "$(date +%k)" -le 11 ]
then
echo "Bom dia $USER, Hoje é $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"

elif [ "$(date +%k)" -ge 12 -a "$(date +%k)" -le 17 ]
then
echo "Boa tarde $USER, Hoje é $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"

else echo "Boa noite $USER, Hoje é $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"
fi



3. Re: shell Scrpit Data e hora [RESOLVIDO]

Mauricio Souza Klein
Hebang

(usa Arch Linux)

Enviado em 19/09/2011 - 10:29h

man date

Faca o codigo e tente rodar. Se tiver problemas, poste as duvidas aqui.


4. Muito Obrigdo

Nerd Leigo
NERDS LEIGO

(usa Ubuntu)

Enviado em 19/09/2011 - 11:25h

obrigado esclareceu minhs duvidas tenho mas duvidas que serão postadas no momento. vlw e obrigdo pela a força gente!


5. Re: shell Scrpit Data e hora [RESOLVIDO]

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 19/09/2011 - 18:13h


Concordo com o Hebang, o ideal é que você tente primeiro e depois solicite nossa ajuda, mas como o colega já resolveu seu problema ... então vamos dar uma contribuição a mais para seu conhecimento.

Muita gente usa o date assim:

else echo "Boa noite $USER, Hoje e $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"

Mas podemos economizar alguns comandos assim:

else echo "Boa noite $USER, Hoje e $(date "+%a , dia %d de %b de %Y")"

ou ainda assim:

else date "+Boa tarde $USER, Hoje e %a , dia %d de %b de %Y"

Só a titulo informativo, pois isso teria que rodar muitas vezes para sentir a diferença.

No caso fiz um loop de 1000 para os comandos e veja a diferença:

1) echo "Boa noite $USER, Hoje e $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"
real 0m18.890s
user 0m4.636s
sys 0m15.181s


2) echo "Boa noite $USER, Hoje e $(date "+%a , dia %d de %b de %Y")"
real 0m5.277s
user 0m1.508s
sys 0m3.816s


3) date "+Boa tarde $USER, Hoje e %a , dia %d de %b de %Y"
real 0m3.989s
user 0m1.284s
sys 0m2.828s



6. Re: shell Scrpit Data e hora [RESOLVIDO]

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 19/09/2011 - 23:03h

fdmarp escreveu:

No caso fiz um loop de 1000 para os comandos e veja a diferença:

1) echo "Boa noite $USER, Hoje e $(date +%a), dia $(date +%d) de $(date +%b) de $(date +%Y)"
real 0m18.890s
user 0m4.636s
sys 0m15.181s


2) echo "Boa noite $USER, Hoje e $(date "+%a , dia %d de %b de %Y")"
real 0m5.277s
user 0m1.508s
sys 0m3.816s


3) date "+Boa tarde $USER, Hoje e %a , dia %d de %b de %Y"
real 0m3.989s
user 0m1.284s
sys 0m2.828s


Estou sempre que possível adotando a tática de não ficar preocupado com o número de linhas do código e sim com a sua execução.
O exemplo 3 e o 2 parecem similares, mas me parece que no caso do 2º gera 2 forks. No caso do exemplo 3(tres) gera apenas 1.

Outra estratégia na hora de usar comandos é tentar sempre algum builtin. No caso, o date acessa o system e cobra recursos da máquina.
Se você tiver como simular algum tipo de comportamento usando uma função builtin, tente usa-la porque irá economizar recursos e a operação será mais rápida geralmente.




7. Re: shell Scrpit Data e hora [RESOLVIDO]

Nerd Leigo
nerds leigo

(usa Ubuntu)

Enviado em 19/09/2011 - 23:10h

vlw amigo ja tinha resolvido mas gostei do seu codigo! abraços e muito Obrigado!


8. Re: shell Scrpit Data e hora [RESOLVIDO]

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 20/09/2011 - 21:00h

nerds leigo escreveu:

vlw amigo ja tinha resolvido mas gostei do seu codigo! abraços e muito Obrigado!


Qual código ? kkkk Eu só citei ele. :)







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts