LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Всегда от большего отнимать меншее, и когда надо, негативить результат.

Ну это разумеется. Тут еще один момент есть. Надо бы дату фиксировать (то есть явно указать), а то он когда вычитает, то она вычитается. Можно фиксировать 1970-01-01 по UTC (с ключом -u). Тогда от нуля всегда время в секундах и наносекундах будет выдаваться. Иначе можно неприятность отхватить. Я как-то сразу об этом не подумал. В date вроде бы нельзя указать входной формат, то есть чтобы дату игнорировать. То есть что даты нет как бы. Можно неприятности отхватить. Особенно при сложении.

$ date -d "00:00:04.450" +%s%N
1622322004450000000
$ date -u -d "1970-01-01 00:00:04.450" +%s%N
4450000000

Исходная версия Zubok, :

Всегда от большего отнимать меншее, и когда надо, негативить результат.

Ну это разумеется. Тут еще один момент есть. Надо бы дату фиксировать (то есть явно указать), а то он когда вычитает, то она вычитается. Можно фиксировать 1970-01-01 по UTC (с ключом -u). Тогда от нуля всегда время в секундах и наносекундах будет выдаваться. Иначе можно неприятность отхватить. Я как-то сразу об этом не подумал. В date вроде бы нельзя указать входной формат. То есть что даты нет как бы. Можно неприятности отхватить. Особенно при сложении.

$ date -d "00:00:04.450" +%s%N
1622322004450000000
$ date -u -d "1970-01-01 00:00:04.450" +%s%N
4450000000