Bash дата/время арифметика
у меня есть небольшой скрипт Bash, который приостанавливает работу компьютера через определенное количество минут. Тем не менее, я хотел бы продлить его, чтобы сказать мне, какое время будет, когда он будет приостановлен, чтобы я мог получить приблизительное представление о том, сколько времени мне осталось, так сказать.
#!/bin/sh
let SECS=*60
echo "Sleeping for" "minutes, which is" $SECS "seconds."
sleep $SECS &&
pm-suspend
единственным аргументом скрипта будет то, сколько минут спустя компьютер должен быть приостановлен. Все, что я хочу добавить в этот скрипт, это в основном echo
говоря, например, " спать до HH:nn: ss!". Любой идеи?
3 ответов
в системах, производных от BSD, вы бы использовали
date -r $(( $(date "+%s") + * 60 ))
т. е. получите текущую дату в секундах, добавьте количество минут и верните ее на дату.
Да, немного менее элегантно.