Отображать количество часов с определенного времени в bash

Я был бы признателен, если бы никакие сообщения не выглядели как решение, когда они не были (ответ SimonEritsch).

Насколько я понимаю, пока нет доступных пакетов amd64 (спасибо вам за информацию) и в настоящее время это будет единственным правильным ответом на исходный вопрос.

Что касается подсказки, чтобы попытаться установить это - установка завершилась неудачно.

Связанная запись this [!d4 ]

EDIT: @imonEritsch

Он ничего не сделал. Вероятно, вы попали в GIMP 2.6.x.

Вот решение для установки GIMP 2.7.4. Протестировано на ubuntu 11.10 x64. 1. Откройте терминал и выполните следующие команды:

sudo add-apt-repository ppa:matthaeus123/mrw-gimp-svn
sudo apt-get update

2. Запустите Центр программного обеспечения, найдите GIMP, нажмите «Больше информации» (он уже должен указать, что вы собираетесь установить 2.7.4) и установите его, не изменяя никаких параметров.

Теперь вышесказанное бит по-биту, что я сделал, что дало мне рабочий GIMP без каких-либо дополнительных сбоев, но должно также работать следующее:

sudo add-apt-repository ppa:matthaeus123/mrw-gimp-svn
sudo apt-get update
sudo apt-get install gimp

Изменить: последний метод подтвердил работу.

1
задан 23 May 2011 в 19:24

7 ответов

Вообще говоря, времена в Unix проще всего конвертировать оба времени в Unix Timestamps (секунда с 1970-1-100:00), вычесть одно из другого и, в вашем случае, делить на 3600, чтобы получить часы .

SECONDS=`expr $(date -d "20110523" +%s) - $(date -d "20110522" +%s)` expr $SECONDS / 3600 #Return is 24
2
ответ дан 25 July 2018 в 21:51
  • 1
    Отлично! Не знал об отметках времени Unix. – Malabarba 23 May 2011 в 20:00
  • 2
    Правильно уже около секунды. SECONDS - специальная переменная bash, которая меняется каждую секунду. Кроме того, bash может выполнять целочисленную математику; нет необходимости в expr. – geirha 27 May 2011 в 04:16

Вообще говоря, времена в Unix проще всего конвертировать оба времени в Unix Timestamps (секунда с 1970-1-100:00), вычесть одно из другого и, в вашем случае, делить на 3600, чтобы получить часы .

SECONDS=`expr $(date -d "20110523" +%s) - $(date -d "20110522" +%s)` expr $SECONDS / 3600 #Return is 24
2
ответ дан 2 August 2018 в 03:27

Вообще говоря, времена в Unix проще всего конвертировать оба времени в Unix Timestamps (секунда с 1970-1-100:00), вычесть одно из другого и, в вашем случае, делить на 3600, чтобы получить часы .

SECONDS=`expr $(date -d "20110523" +%s) - $(date -d "20110522" +%s)` expr $SECONDS / 3600 #Return is 24
2
ответ дан 4 August 2018 в 19:24

Вообще говоря, времена в Unix проще всего конвертировать оба времени в Unix Timestamps (секунда с 1970-1-100:00), вычесть одно из другого и, в вашем случае, делить на 3600, чтобы получить часы .

SECONDS=`expr $(date -d "20110523" +%s) - $(date -d "20110522" +%s)` expr $SECONDS / 3600 #Return is 24
2
ответ дан 6 August 2018 в 03:35

Вообще говоря, для времен в Unix проще всего преобразовать обе даты в Unix Timestamps (то есть секунды с 1970-1-100:00), вычесть одно из другого и, в вашем случае, разделите на 3600, чтобы получить часы.

  SECONDS = `expr $ (date -d" 20110523 "+% s) - $ (date -d" 20110522 "+% s)` expr $  SECONDS / 3600 # Возврат 24  
2
ответ дан 7 August 2018 в 21:24

Вообще говоря, для времен в Unix проще всего преобразовать обе даты в Unix Timestamps (то есть секунды с 1970-1-100:00), вычесть одно из другого и, в вашем случае, разделите на 3600, чтобы получить часы.

  SECONDS = `expr $ (date -d" 20110523 "+% s) - $ (date -d" 20110522 "+% s)` expr $  SECONDS / 3600 # Возврат 24  
2
ответ дан 10 August 2018 в 09:42

Вообще говоря, для времен в Unix проще всего преобразовать обе даты в Unix Timestamps (то есть секунды с 1970-1-100:00), вычесть одно из другого и, в вашем случае, разделите на 3600, чтобы получить часы.

  SECONDS = `expr $ (date -d" 20110523 "+% s) - $ (date -d" 20110522 "+% s)` expr $  SECONDS / 3600 # Возврат 24  
2
ответ дан 13 August 2018 в 15:54
  • 1
    Отлично! Не знал об отметках времени Unix. – Malabarba 23 May 2011 в 20:00
  • 2
    Правильно уже около секунды. SECONDS - это специальная переменная bash, которая меняется каждую секунду. Кроме того, bash может выполнять целочисленную математику; нет необходимости в expr. – geirha 27 May 2011 в 04:16

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

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