#!/bin/bash
ddd=$(date +%Y-%m -d "-1 month")
xmessage -timeout 10 $ddd
Если я попробую этот простой скрипт, я получаю, что он отлично работает с терминалом, но когда я запускаю этот скрипт через cron, переменная всегда пуста? Я пробовал много разных синтаксисов, но результат тот же. Работает в терминале, но не от cron.
man date говорит:
SYNOPSIS
date [OPTION]... [+FORMAT]
Он должен работать в любом случае, но вы в безопасности, используя date, как сообщает manpage:
ddd=$(date -d "-1 month" +%Y-%m)
С скриптом
#!/bin/bash
ddd=$(date -d "-1 month" +%Y-%m)
xmessage -timeout 10 $ddd
и линией cronjob
* * * * * DISPLAY=:0 /path/to/script.sh
он очень хорошо работает в моей системе - см. Как запустить приложение GUI из cron? и Cron HowTo.
man date говорит:
SYNOPSIS
date [OPTION]... [+FORMAT]
Он должен работать в любом случае, но вы в безопасности, используя date, как сообщает manpage:
ddd=$(date -d "-1 month" +%Y-%m)
С скриптом
#!/bin/bash
ddd=$(date -d "-1 month" +%Y-%m)
xmessage -timeout 10 $ddd
и линией cronjob
* * * * * DISPLAY=:0 /path/to/script.sh
он очень хорошо работает в моей системе - см. Как запустить приложение GUI из cron? и Cron HowTo.