logo

Comando de data do Linux

O comando Linux date é usado para exibir data, hora, fuso horário, etc. Também é usado para definir a data e hora do sistema Linux. Geralmente, é usado para exibir a data em diferentes formatos e calcular datas ao longo do tempo.

Sintaxe:

 date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 

Opções

A seguir estão algumas opções úteis de linha de comando do comando date:

-d, --data=STRING: É usado para exibir o tempo descrito por STRING.

--depurar: É usado para anotar a data analisada e fornecer um aviso sobre o uso controverso do stderr.

-f, --arquivo=DATEFILE: É semelhante à opção '--date'.

-I[FMT], --iso-8601[=FMT]: É usado para exibir a data/hora no formato ISO 8601.

-R, --rfc-e-mail: É usado para exibir a data e a hora no formato RFC 5322. Por exemplo, segunda-feira, 14 de agosto de 2006 02:34:56 -0600.

--rfc-3339=FMT: É usado para exibir data/hora no formato RFC 3339.

-r, --referência = ARQUIVO: É usado para exibir o horário de modificação anterior do ARQUIVO.

-s, --set=STRING: É usado para definir o tempo descrito por STRING.

-você, --utc, --universal: É usado para exibir ou definir o UTC.

--ajuda: É usado para exibir o manual de ajuda.

--versão: Ele exibe as informações da versão.

Opções de formatação

%a: É usado para exibir o nome abreviado do dia da semana (por exemplo, Dom)

%A: É usado para exibir o nome completo do dia da semana (por exemplo, domingo)

%b: é usado para exibir o nome abreviado do mês (por exemplo, janeiro)

int para string java

%B: É usado para exibir o nome completo do mês (por exemplo, janeiro)

%c: É usado para exibir a data e a hora (por exemplo, quinta-feira, 3 de março, 23:05:25 de 2005)

%C: É usado para exibir o século; como% Y, exceto omitir os dois últimos dígitos (por exemplo, 20)

%d: É usado para exibir o dia do mês (por exemplo, 01)

%D: É usado para exibir a data; igual a %m/%d/%y

%e: É usado para exibir o dia do mês, preenchido com espaços; igual a %_d

%F: É utilizado para exibir a data completa; igual a %Y-%m-%d

%g: É usado para exibir os dois últimos dígitos do ano do número da semana ISO (ver %G)

%G: É usado para exibir o ano do número da semana ISO (ver %V); normalmente útil apenas com %V.

%h: É semelhante à opção '%b'.

%H: É usado por uma hora (00..23)

%EU: É usado por uma hora (01..12)

%j: É usado para o dia do ano (001..366)

%k: É usado para a hora, com espaço preenchido (0..23); igual a %_H

%eu: É usado para a hora, com espaço preenchido (1..12); igual a %_I

%m: É usado para o mês (01..12)

%M: É usado para os minutos (00..59)

%n: É usado para uma nova linha

%N: é usado para nanossegundos (000000000..999999999)

%p: É usado para transmitir o equivalente a AM ou PM; em branco se não for conhecido

%P: É semelhante à opção '%p', mas é passada em letras minúsculas.

%q: É usado para exibir o trimestre do ano (1..4)

%r: É usado para exibir o horário de 12 horas (por exemplo, 23h11min04s)

%R: É usado para exibir o horário de 24 horas em horas e minutos; igual a %H:%M

%s: é usado para exibir os segundos desde 01/01/1970 00:00:00 UTC

%S: é usado para exibir o segundo (00..60)

%t: É usado para uma opção de guia.

%T: é usado para exibir a hora; igual a %H:%M:%S

%em: É utilizado para o dia da semana (1..7); 1 é segunda-feira

%EM: É usado para o número da semana do ano, conta o domingo como o primeiro dia da semana (00..53)

%EM: É usado para o número da semana ISO, conta segunda-feira como o primeiro dia da semana (01..53)

%Em: É utilizado para o dia da semana (0..6); 0 é domingo

%EM: É usado para o número da semana do ano. Conta segunda-feira como o primeiro dia da semana (00..53)

%x: É usado para representação de data (por exemplo, 31/12/99)

%X: É usado para representação de tempo (por exemplo, 23:13:48)

%e: É usado para os dois últimos dígitos do ano (00..99)

%E: É usado por um ano

%Com: É usado para o fuso horário numérico +hh:mm (por exemplo, -0400)

%:Com: É usado para o fuso horário numérico +hh:mm (por exemplo, -04:00)

%::Com: É usado para o fuso horário numérico +hh:mm:ss (por exemplo, -04:00:00)

%:::Com: É usado para o fuso horário numérico com ':' com a precisão necessária (por exemplo, -04, +05:30)

%COM: É usado para a abreviação alfabética do fuso horário (por exemplo, EDT)

Exemplos do comando data

Vejamos os seguintes exemplos do comando date:

Como usar o comando data

O comando date é um utilitário básico e pode ser usado executando sem qualquer argumento. Ele exibirá a data e hora atuais. Considere o comando abaixo:

 date 

O comando acima exibirá a data e hora atuais do sistema. Considere a saída abaixo:

Data Linux

Formatação de data

Podemos exibir a data no formato de nossa escolha. Existem várias opções para exibir a data em um formato específico. Diferentes formatos de data podem ser vistos na lista de opções de formatação acima. Considere os comandos abaixo:

 date '%a %d-%m-%y' date +'%A %d-%m-%y' date +'%b %d-%m-%y' date +'%B %d-%m-%y' date +'%c %d-%m-%y' date +'%C %d-%m-%y' 

A partir dos comandos acima, a data será exibida em diferentes formatos. Considere a saída abaixo:

Data Linux

Semelhante aos comandos acima, existem outras opções disponíveis. Veja a lista completa das opções de formatação acima.

Sequências de data

Podemos especificar a data em diferentes strings de data. A opção '-d' é usada para operar em uma data específica. Considere o comando abaixo:

 date -d '2020-06-06 12:10:53' 

No comando acima, temos uma data especificada em um formato diferente. Ele exibirá a descrição da data e hora específicas. Considere a saída abaixo:

Data Linux

Também podemos usar a formatação personalizada da seguinte maneira:

 date -d '06 jun 2020' +'%A, %d %B %Y' 

O comando acima exibirá a data no formato fornecido. Considere a saída abaixo:

Data Linux

Além disso, podemos passar strings como 'ontem', 'segunda-feira', 'última segunda-feira', 'próxima segunda-feira', 'próximo mês', 'próximo ano' e muito mais.

Considere os comandos abaixo:

 date -d now date -d yesterday date -d tomorrow date -d 'next monday' date -d 'last monday' 

Os comandos acima exibirão as datas de acordo. Considere a saída abaixo:

Data Linux

Substituindo o fuso horário

Por padrão, o comando date exibe a hora de acordo com o fuso horário atual. Mas, podemos mudar isso definindo o variável de ambiente 'TZ.' O valor padrão da variável 'TZ' é armazenado no arquivo '/etc/localtime'. Depois de alterar o valor da variável de ambiente, podemos exibir a hora de diferentes fusos horários. Considere os comandos abaixo:

 TZ='Australia/Melbourne' date TZ=+5:30 date 

Os comandos acima exibirão a hora de acordo com os fusos horários determinados. Considere a saída abaixo:

Data Linux

Comando de data como conversor de época

O comando date também pode ser usado para exibir a hora da época. O horário da época (horário Unix ou carimbo de data / hora Unix ou horário POSIX) é o tempo (em segundos) decorrido desde 1º de janeiro de 1970.

Para exibir a hora desde a época até a data atual, execute o comando com a opção '%s' da seguinte forma:

 date +%s 

O comando acima exibirá o tempo decorrido desde a época. Considere a saída abaixo:

Data Linux

Para converter a hora na data atual, prefixe os segundos com '@'. Considere o comando abaixo:

 date -d @122222222 

O comando acima irá converter o tempo (em segundos) para um formato legível por humanos. Considere a saída abaixo:

Data Linux

Exibir a hora da última modificação de um arquivo

A opção '-r' é usada para exibir a hora da última modificação do arquivo. Por exemplo, para exibir a hora da última modificação do arquivo 'Demo1.txt' execute o comando da seguinte forma:

 date -r Demo1.txt 

O comando acima exibirá a hora em que o arquivo fornecido foi modificado. Considere a saída abaixo:

Data Linux

Defina a data e hora do sistema

Podemos definir a hora e a data do sistema usando o comando date. Porém, não é recomendado definir a data e hora do sistema pelo comando date. Porque o relógio do sistema Linux é sincronizado usando os serviços sytemd-timesyncd ou ntp.

Para definir a hora pelo comando date, use a opção '--set=time'. Por exemplo, se quisermos definir a data e hora como '20h15, 06 de junho de 2020', execute o comando da seguinte forma:

 date --set='20200606 22:15' 

O comando acima definirá a hora conforme especificado. Considere a saída abaixo:

Data Linux