Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.61/56: Рейтинг темы: голосов - 56, средняя оценка - 4.61
 Аватар для blackeangel
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908

Посчитать разницу во времени

27.09.2016, 06:31. Показов 12293. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Есть простая задача. Необходимо посчитать разницу в секундах между 2 переменными. Они получаются так
Bash
1
2
localtime=$(date +%H.%M)
yourtime=22.33
Учтем тот факт например что текущее время, к примеру уже 23.00, то есть пропустили по каким то причинам.
То есть надо и это посчитать.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.09.2016, 06:31
Ответы с готовыми решениями:

Найти разницу во времени (вычесть из одного времени другое)
Нужно найти разницу во времени: t1 - t2. Просто так объекты типа datetime отниматься не хотят. Нашел...

Не могу посчитать разницу в таблице
Я знаю как посчитать разницу в одном и том же DBGrid. Но, дело в том, что мне нужно вывести это в другой DBGrid. Я сделала вот так,...

Посчитать разницу столбцов DBGrid
Ребят, помогите! как реализовать такую штуку? Я привязал бд к делфи, добавил кнопки заполнения этой таблицы. теперь мне нужно реализовать...

32
74 / 74 / 17
Регистрация: 06.05.2016
Сообщений: 413
02.10.2016, 01:04
Студворк — интернет-сервис помощи студентам
На android-x86-4.0.iso работает
Code
1
2
date +%s -d 201610012300
date +%s -d 10012300
busybox v1.15.0.svn (2009-07-21 22:30:15 PDT) multi-call binary
Точнее, android-x86-4.0-RC1-asus_laptop.iso
0
 Аватар для blackeangel
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
02.10.2016, 09:06  [ТС]
Marinero, hrlp скопировал из терминала, так что тот.
Попробовал ваш код - bad date

Добавлено через 2 минуты
kalsarikannit, попробуйте на аосп андроид 6 х64
Сам попробую в системе кое что поменять у себя. Может toybox кривой. Либо переключить на busybox.
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
02.10.2016, 12:13
Остается пробовать разные варианты менять порядок, убирать-ставить разделители
Bash
1
2
3
date -d "10012016 23:00"
date -d "100120162300"
%s пока убрать чтобы было видно та ли дата (не напутан месяц/день)
1
74 / 74 / 17
Регистрация: 06.05.2016
Сообщений: 413
02.10.2016, 16:23
Цитата Сообщение от Marinero Посмотреть сообщение
Code
1
date +%s -s '+%a %b %e %H:%M:%S %Z %Y' -d "Sat Oct 1 23:00:00 MSK 2016"
Если предположить, что нужен определенный в справке порядок параметров, то возможен вариант:
Code
1
date +%s -d "Sat Oct 1 23:00:00 MSK 2016" -s '+%a %b %e %H:%M:%S %Z %Y'
Цитата Сообщение от blackeangel Посмотреть сообщение
Code
1
2
571907168
147534923
Попробовал применить реверс-инженеринг:
Code
1
2
3
4
5
6
7
->PS1='это команда ----->'
это команда ----->date -d@571907168
Пн фев 15 10:06:08 MSK 1988
это команда ----->date -d@147534923
Ср сен  4 16:55:23 MSK 1974
это команда ----->date +%s 
1475413884
Что-то пошло не так.
Сравните количество цифр у 147534923 и 1475413884
0
 Аватар для blackeangel
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
02.10.2016, 17:13  [ТС]
kalsarikannit, да вот же
Code
1
2
3
4
5
6
7
8
9
10
11
12
3919056848
 
1475417507
 
-1851327955
 
timer.sh[14]: sleeptime: not found
 
-1851327955
 
timer.sh[15]: sleep: syntax error: Invalid argument '-1851327955'
1|u0_a72@X5PRO:/sdcard $
0
74 / 74 / 17
Регистрация: 06.05.2016
Сообщений: 413
02.10.2016, 17:34
Цитата Сообщение от blackeangel Посмотреть сообщение
kalsarikannit, да вот же
Code
1
2
3
4
5
6
7
3919056848
 
1475417507
 
-1851327955
 
1|u0_a72@X5PRO:/sdcard $
Code
1
2
3
4
5
6
это команда -->    date -d@3919056848
date: invalid date ‘@3919056848’
это команда -->    date -d@1475417507
Вс окт  2 17:11:47 EEST 2016
это команда -->    date -d@-1851327955
Ср май  3 15:53:05 TMT 1911
Я уж несколько раз топик просмотрел, не могу
увидеть, где вы показываете, как у вас выглядит
Code
1
date
без параметров. Покажите, если не сложно.
То есть, сделайте так:
Bash
1
date ; date +%s
1
 Аватар для blackeangel
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
02.10.2016, 18:46  [ТС]
kalsarikannit, Marinero,
Ребята, спасибо вам за помощь!
Вы всё свои варианты правильные и рабочие давали!
Это у меня toybox собран через жо! Переадресовал на busybox все сразу заработало как надо!
Но вопрос работы с отрицательными числами остался открыт.
0
74 / 74 / 17
Регистрация: 06.05.2016
Сообщений: 413
02.10.2016, 18:54
В toybox начиная с шестой версии есть crontab.
0
 Аватар для blackeangel
19 / 10 / 1
Регистрация: 22.07.2015
Сообщений: 908
02.10.2016, 21:21  [ТС]
kalsarikannit, у меня 6 версия и crontab и cron там нашел у себя. В busybox есть.
0
0 / 0 / 0
Регистрация: 16.02.2020
Сообщений: 2
16.02.2020, 00:42
Я понимаю, что тема уже мёртвая, но не могу удержаться от комментария =)

Если задача просто написать будильник, то сделать это можно циклом:

Bash
1
2
3
4
5
6
7
8
9
#!/bin/sh
alarm_time="07:00"; # Время сигнала
while true; do # Бесконечный цикл
    # Если текущее время равно заданному пользователем
    if [[ "$(date +'%H:%M')" == "$alarm_time" ]]; then
        aplay alarm.mp3; # То воспроизводим звуковой сигнал
    fi
    sleep 5; # Ждём 5 секунд, чтобы не нагружать систему
done
PS: Написал скрипт за 15 секунд, это быстрее, чем задать вопрос на форуме.
0
507 / 160 / 49
Регистрация: 27.02.2016
Сообщений: 832
16.02.2020, 08:43
blackeangel,
мне почему то кажется что узнать как конвертировать эпоху в локальные форматы можно нагуглить не вызывая помошь форума

например

https://www.vanstechelman.eu/l... using-bash


Code
1
2
3
4
5
6
7
8
9
DATE_HACKER_FORMAT='13.04.18.14.15'
IFS=\. read DAY MONTH YEAR HOUR MINUTE <<<$DATE_HACKER_FORMAT
YEAR=$(expr $YEAR \+ 2000 )
EPOCH_SECONDS=$(date +%s -d "$YEAR-$MONTH-$DAY $HOUR:$MINUTE")
echo $EPOCH_SECONDS
#  1523643300
DATE_LOCAL_FORMAT=$(date +"%Y-%m-%d %H:%M" -d @$EPOCH_SECONDS)
echo $DATE_LOCAL_FORMAT
# 2018-04-13 14:15
про умножение элементарное знание шел синтаксиса помогает
Code
1
2
3
4
D=42
E=$(( -1 * D))
echo $E
# -42
0
0 / 0 / 0
Регистрация: 16.02.2020
Сообщений: 2
16.02.2020, 21:47
date +%s -d "161001 2300"
Это перевод даты в секунды с начала эпохи, а как я понял человеку нужен будильник был.
0
 Аватар для Kukstyler
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
18.02.2020, 10:54
Bash
1
locale -k LC_TIME
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.02.2020, 10:54

Как посчитать разницу дат
Здравствуйте как посчитать разницу между двумя введенными датами и так что бы это отображалось в другом поле( п.с. куда надо поставить...

Найти разницу во времени
Найти разницу во времени когда в одной строке задано T1, T2 в формате hh:mm:ss (12:47:06). И разницу вивести в таком же формате.

Расчитать разницу во времени
Подскажите пожалуйста. Считает если время одного дня. Если пишу время1 23.59.59 время2 01.01.01 считает уже неправильно. Вот мой код....

Узнать разницу времени
Можно ли в с# получить системное время в формате int? Мне нужно получить системное время вначале и в конце работы программы что бы узнать...

Вычесть разницу во времени
Всем привет, столкнулся с небольшой проблемой. На голом PHP при цикле я нормально сравниваю время и оно работает нормально. Но вот чуть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
33
Ответ Создать тему
Новые блоги и статьи
сукцессия 30. Фосфорный и азотный замки по "честному" закону лимитирования Либиха
anaschu 16.07.2026
Основные достижения за последние дни 1. Механизм отложенного высвобождения фосфора Добавлен специальный пул для медленного разложения меланизированных гиф ЕСМ Реализована разная скорость. . .
Запрет пометки на удаление и отмены проведения
Maks 16.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "ПутевойЛист" разработанного в КА2. Задача: запретить помечать на удаление и отменять проведения путевого листа при условии, если он сдан. . .
Как надо было делать правильно - вообще не слушать ИИ, его дело - текст.
Hrethgir 15.07.2026
А вообще надо было делать не так, чтобы не исправлять ошибку https:/ / www. cyberforum. ru/ blogs/ 223907/ 10996. html , правильно было : удалил кнопку, а потом добавил её. Всё это стресс конечно. Почему?. . .
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот. Ларри Уингет
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров В текущей версии модели успешно реализован ключевой механизм. . .
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям Реализованные компоненты: Механизм закисления почвы через протонную помпу Конкуренция между типами микориз pH как триггер сукцессии C/ P соотношение. . .
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru