Ik heb een probleem met een scriptje.. Scriptje draait wel onder mijn shell, maar geeft problemen onder cron.
Betreft hier een FreeBSD 7.2 doos, mijn shell is bash. Het betrof hier een wat groter script, maar ik heb mijn probleem teruggebracht tot een script met 3 regeltjes.
Het script:
Het script draait prima als ik het interactief in mijn shell (bash) draai. Ja, ik draai onder root, daar draait het script ook onder in crontab.
Ook als ik het script met sh aanroep, zie ik hetzelfde:
Als ik echter het scriptje via cron aanroep:
Dan krijg ik een mailtje terug met in de content enkel:
Iemand enig idee waarom die variabele leeg blijft?
Betreft hier een FreeBSD 7.2 doos, mijn shell is bash. Het betrof hier een wat groter script, maar ik heb mijn probleem teruggebracht tot een script met 3 regeltjes.
Het script:
code:
1
2
3
| #!/bin/sh MYSQL=`/usr/bin/which mysql` echo "--> $MYSQL <--" |
Het script draait prima als ik het interactief in mijn shell (bash) draai. Ja, ik draai onder root, daar draait het script ook onder in crontab.
code:
1
2
| [root@hostname ~]# ./test.sh --> /usr/local/bin/mysql <-- |
Ook als ik het script met sh aanroep, zie ik hetzelfde:
code:
1
2
| [root@hostname ~]# sh test.sh --> /usr/local/bin/mysql <-- |
Als ik echter het scriptje via cron aanroep:
code:
1
2
| [root@nmt-ded-01 ~]# cat /etc/crontab | grep test.sh */5 * * * * root /root/test.sh |
Dan krijg ik een mailtje terug met in de content enkel:
code:
1
| --> <-- |
Iemand enig idee waarom die variabele leeg blijft?
Two advices for network troubleshooting.. learn to draw diagrams in Visio, and THINK IN LAYERS!