Я пытаюсь использовать функции, определенные в /home/my_username/.bashrc, в сценарии оболочки, который запускается crontab.
#crontab -l
# m h dom mon dow command
* * * * * /bin/sh /home/my_username/CronTab_shell_script.sh >> /home/my_username/Desktop/file.log
Скажем, у меня есть функция mount (), сохраненная в
/home/my_username/.bashrc
function mounted(){
if mount|grep $1; then
echo "mounted"
else
echo "not mounted"
fi
}
Как я могу вызвать и использовать функцию mount () из
/home/my_username/CronTab_shell_script.sh
Cron работает с ограниченной оболочкой и не будет иметь доступ к вашей обычной среде.
Вы можете поместить source /home/my_username/.bashrc в начало /home/my_username/CronTab_shell_script.sh, чтобы сделать эту функцию доступной.
Вы также можете указать свой .bashrc в своем crontab:
#crontab -l
# m h dom mon dow command
* * * * * . /home/my_username/.bashrc; /bin/sh /home/my_username/CronTab_shell_script.sh >> home/my_username/Desktop/file.log
Cron работает с ограниченной оболочкой и не будет иметь доступ к вашей обычной среде.
Вы можете поместить source /home/my_username/.bashrc в начало /home/my_username/CronTab_shell_script.sh, чтобы сделать эту функцию доступной.
Вы также можете указать свой .bashrc в своем crontab:
#crontab -l
# m h dom mon dow command
* * * * * . /home/my_username/.bashrc; /bin/sh /home/my_username/CronTab_shell_script.sh >> home/my_username/Desktop/file.log