Hellooo! У меня есть следующее предложение, которое работает в Linux, но не в версии Solaris.
YEAR=2019
echo $(expr '(' $(date -d $YEAR/9/30 +%s) - $(date +%s) + 86399 ')' / 86400) " days until deadline" the error is due to the date
Появляется ошибка:
command date: illegal option -- d usage: date [-u] mmddHHMM[[cc]yy][.SS] date [-u] [+format] date -a [-]sss[.fff]
Любые идеи?
большое спасибо
Функция, которую вы пытаетесь использовать, включена в GNU date
(по умолчанию в Linux), но не в Solaris date
.
Вы можете установить дату GNU на Solaris из различных сторонних репозиториев, таких как OpenCSW (бесплатно) или UNIXPackages ($).
Я давно не использовал Solaris. Последней версией, которую я использовал, была Solaris 10.
Ответ: Solaris не позволяет выполнять «математику дат». Не нравится -d вариант.
man date
должен показать вам это. Может быть другой вариант вместо -d, не помню. Может, преобразовать все в секунды?
Чего именно вы пытаетесь достичь?