Получите Текущую дату в эпоху из сценария оболочки Unix

Как получить значение текущей даты в эпоху, т.е. количество дней протекло с 01.01.1970. Мне нужно решение в сценарии оболочки Unix.

1
задан 19 November 2018 в 21:16

6 ответов

Обновление: ответ ранее отправил здесь связанный с пользовательским сценарием, который больше не доступен, только потому что OP указал на это date +'%s' не работал на него. Посмотрите UberAlex' ответ и ответ cadrian для надлежащих решений. Короче говоря:

  1. Для числа секунд начиная с использования эпохи Unix date(1) следующим образом:

    date +'%s'
    
  2. Для количества дней с эпохи Unix делятся, результат числом секунд за день (возражайте против двойных круглых скобок!):

    echo $(($(date +%s) / 60 / 60 / 24))
    
45
ответ дан 31 October 2019 в 06:46
echo $(($(date +%s) / 60 / 60 / 24))
11
ответ дан 31 October 2019 в 06:46

Команда Unix Date отобразится во время эпохи

команда

date +"%s"

http://unixhelp.ed.ac.uk/CGI/man-cgi?date

Править: Некоторые люди заметили, что Вы спрашивали в течение многих дней, таким образом, это - результат той команды, разделенной на 86 400

137
ответ дан 31 October 2019 в 06:46
echo `date +%s`/86400 | bc
2
ответ дан 31 October 2019 в 06:46

В зависимости от языка, который Вы используете, это будет чем-то простым как

CInt(CDate("1970-1-1") - CDate(Today()))

Достаточно иронически вчера был день 40,000, если Вы используете 01.01.1900 в качестве "День Зеро" как много использования компьютерных систем.

-3
ответ дан 31 October 2019 в 06:46

У Вас есть включенная виртуализация в Ваших настройках BIOS? Если не пытаются делать это.

Страница Intel о том, как сделать это

Некоторое время назад у меня была подобная проблема, и она решила его.

1
ответ дан 7 December 2019 в 15:11

Другие вопросы по тегам:

Похожие вопросы: