Как вычислить дату для touch -t

Как создать тип даты в Bash?

что означает эта дата? '1803141400'

touch -t 1803141400 test1 test2

Как я могу вычислить время?

2 ответа

Решение

Согласно сенсорной странице:

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

где:

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

[] указывает, что поле является необязательным

В твоих примерах 1803141400 средства: 2018 mar 14, 14.00 а также touch изменит метку времени test1 а также test2 файлы в соответствии с этим значением.

$ 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

-t параметры позволяют пользователю добавлять определенное время последнего доступа при создании файла с помощью touch командование

За ним следует строка в формате дата, месяц, год, минута: второй, и последний использует формат [[CC]YY]MMDDhhmm[.ss], где CC,YY а также SS необязательно.

Например, чтобы создать временный файл с отметкой времени

 [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

Как вы можете видеть, если вы не предоставляете CC а также YY, он автоматически вставляет текущий CC и YY.

В вашем случае т.е. touch -t 1803141400 test1 test2

это создаст отметку времени

год - 2018 (первая пара цифр)

месяц- 03 (вторая пара цифр)

дата - 14 (третья пара цифр)

время - 14:02 (четвертая и пятая пара цифр)

[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
Другие вопросы по тегам