você está aqui: Home  → Arquivo de Mensagens

Explorando as possibilidades do comando "date"

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 10 de outubro de 2012

O comando date oferece diversas possibilidades de uso. Em programas shell, é comum, por exemplo, determinarmos ações a serem executadas no futuro, ou verificar situações no passado.

Por exemplo, para definir uma variável com a data do dia de amanhã:

  $ amanha=`date +%d --date="tomorrow"`
  $ echo $amanha
  10
  $ amanha=`date +%D --date="tomorrow"`
  $ echo $amanha
  10/10/12

A diretiva +%d refere-se ao dia do mês, e apenas a ele. Já a diretiva +%D se refere à data completa, no formato dd/mm/aa.

Vejam mais alguns exemplos:

  $ amanha=`date +%D --date="next week"`
  $ echo $amanha
  10/16/12
  $ amanha=`date +%D --date="next month"`
  $ echo $amanha
  11/09/12
  
  $ amanha=`date +%d --date="-10 days"`
  $ echo $amanha
  29

Em linhas gerais é isto, experimentando com variações dos comandos acima, é possível fazer bastante coisa. A documentação do comando date (man date) fornece informações bem detalhadas sobre as diretivas aceitas.



 

 

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Opinião dos Leitores

Alvaro
26 Out 2012, 10:52
Olá! Seu super fã do dicas L tanto no inglês quanto no Linux, embora seja ainda iniciante nos dois assuntos, mas ultimamente tenho por necessidade profissional tenho me esforçado muito para melhorar. Tentando refazer os passos da dica sobre datas, de 10/10/2012, me deparei com um detalhe que não sei se estou falando bobagem, por isso recorro ao auxilio do mestre!

Na passagem da dica abaixo, salvo alguma configuração, acredito que o padrão para datas seja mm/dd/aa, e não dd/mm/aa como explicado. Talvez a data 10/10/12 tenha induzido a essa conclusão, mas como disse no inicio, não sei se alguma configuração de ambiente poderia alterar o resultado e se esse seria realmente o padrão do sistema. Outra evidência é que a opção "next week" resultou em 10/16/2012 (mm/dd/aaaa).

Segue trecho da dica:

$ amanha=`date +%D --date="tomorrow"`
$ echo $amanha
10/10/12

A diretiva +%d refere-se ao dia do mês, e apenas a ele. Já a diretiva +%D se refere à data completa, no formato dd/mm/aa.

Mais uma vez agradeço pela iniciativa de ajudar e multiplicar conhecimento, parabéns pela facilidade e disposição em colaborar!

Att.

Álvaro
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script