Intereting Posts
суммирование двух матриц, каждый из которых в другом файле bash не изменяет размер в интерактивном контейнере Docker Как настроить wirehark с правильными разрешениями Как перебирать несколько расширений файлов, не заботясь о чувствительности к регистру? Какой язык сценариев или платформа использовать для загрузки веб-страниц и взаимодействия с экраном? Tmpfs с переполнением на диске? Как я нажимаю Mercurial репозиторий на BitBucket поверх ssh? Как удалить простую часть программного обеспечения? Когда параллельный выход GNU, моя программа также терпит неудачу Ranger cd в папку? Bash: Как создать постоянные строки-заменители в командах Bash? chroot не работает с –userspec, когда chroot – i686 bcache не работает, как ожидалось, с помощью ramdisk в качестве устройства кэширования Монтирование раздела NTFS при запуске в Ubuntu Резервное копирование раздела с использованием dd и изменение файлов

Shell Script – количество минут

Оболочка

Как написать сценарий оболочки, используя только функции оболочки (и команду date), чтобы вывести количество минут, прошедших в текущий день?

Поскольку date обрабатывает не спецификаторы как литералы, вы можете использовать строку формата для построения простого арифметического выражения для текущего количества минут, а затем оценивать результат с помощью встроенной арифметики оболочки. Например, в bash

 printf "$(( $(date '+%H * 60 + %M') ))\n" 

Если ваша оболочка не поддерживает арифметику, вы можете использовать внешний калькулятор, такой как bc

 date '+%H * 60 + %M' | bc 

или dc

 date '+%H 60 * %M + p' | dc 

date GNU и bash :

 daystart_sec="$(date --date="today 00:00:00" +%s)" now_sec="$(date +%s)" echo $(((now_sec-daystart_sec)/60)) 

как вычесть количество минут, прошедших в день, от количества оставшихся минут в день (т.е. 1440)? Поэтому в основном я хочу вычесть результат выше с 1440.