Я новичок в планировании задач с помощью cron и crontab. Я пытаюсь запланировать выполнение задачи, как если бы я вошел в систему, открыл терминал и выполнил его сам.
Однако я запланировал задачу, чтобы помочь мне наблюдать, с какими $ USER и $ PATH выполняется запланированная задача, и вот что я обнаружил:
$ crontab -l
41 11 * * * echo "USER: $USER" > ~/Desktop/cron_env.log; echo "PATH: $PATH" >> ~/Desktop/cron_env.log
$ cat ~/Desktop/cron_env.log
USER:
PATH: /usr/bin:/bin
Похоже, что $ USER не установлен, а $ PATH - это что-то очень простое и / или по умолчанию. Напротив, это то, что я вижу, когда открываю терминал (вошел в систему) и повторяю ту же информацию:
USER: aschirma
PATH: /usr/lib/jvm/java-6-sun/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/pkg/icetools/bin:/pkg/hwtools/bin:/pkg/netscape/bin:/pkg/gnu/bin
Что мне нужно сделать, чтобы мои задачи crontab работали так, как я хочу?