Como calcular a data para o toque -t

4

Como criar um tipo de data no bash?

o que essa data significa? '1803141400'

touch -t 1803141400 test1 test2

Como posso calcular o tempo?

    
por Person.Junkie 14.09.2014 / 12:05

2 respostas

5

De acordo com a página de manual do usuário :

  -t STAMP
              use [[CC]YY]MMDDhhmm[.ss] instead of current time

onde:

CC: First two digit of the year
YY: Last two digits of the year
MM: Month (two-digit numeric month)
DD: Day (two-digit numeric day i.e. day of month)
hh: Hour
mm: Minutes
ss: Seconds

[] indica que o campo é opcional

Nos seus exemplos 1803141400 significa: 2018 mar 14, 14.00 e touch alterarão o registro de data e hora de test1 e test2 arquivos de acordo com esse valor.

$ ls -l test1 test2
-rw-rw-r-- 1 yourUser yourGroup 0 mar 14  2018 test1
-rw-rw-r-- 1 yourUser yourGroup 0 mar 14  2018 test2
    
por Lety 14.09.2014 / 12:38
0

As opções -t permitem que o usuário adicione um horário de acesso específico ao criar um arquivo usando o comando touch .

Ela é seguida por uma string na data, mês, ano, minuto: segundo formato e a segunda usa um formato [[CC] AA] MMDDhhmm [.ss], em que CC , YY e SS é opcional.

Por exemplo, para criar arquivo temp com registro de data e hora

 [guru@guru-Aspire ~]$touch -t 12141105  temp
 [guru@guru-Aspire ~]$ls -l --full-time temp

  -rw-rw-r-- 1 guru guru 0 2014-12-14 11:05:00.000000000 +0530 temp

Como você pode ver se não fornece CC e YY , ele insere automaticamente o CC e o AA atuais.

No seu caso, por exemplo, touch -t 1803141400 test1 test2

ele criará um timestamp de

ano-2018 (primeiro par de dígitos)

mês-03 (segundo par de dígitos)

date- 14 (terceiro par de dígitos)

tempo - 14:02 (quarto e quinto par de dígitos)

[guru@guru-Aspire ~]$ ls -l --full-time test*
-rw-rw-r-- 1 guru guru 0 2018-03-14 14:00:00.000000000 +0530 test1
-rw-rw-r-- 1 guru guru 0 2018-03-14 14:00:00.000000000 +0530 test2
    
por g_p 14.09.2014 / 12:38