Рассмотрим следующий файл anacrontab:
1 0 bob-job /home/bob/script.sh
Я знаю, что могу задать переменные следующим образом:
FOO=bar
1 0 bob-job /home/bob/script.sh
Однако можно ли задать переменную только для этой bob-job
строки?
Я знаю, что я могу сделать:
FOO=bar
1 0 bob-job /home/bob/script.sh
FOO=
... но это не эквивалентно, поскольку затирает существующее значение FOO, если таковое имеется (из родительской среды anacron), а установка FOO=
в пустое значение также не эквивалентна сбросу.
решение1
Вы можете использовать env
утилиту:
1 0 bob-job env FOO=bar /home/bob/script.sh
Утилита env
устанавливает одну или несколько переменных среды (или очищает среду с помощью -i
) и выполняет указанную утилиту (ваш скрипт) с измененной средой.
Смотрите man env
в своей системе.