Please Help me out on Bash script CRON

Mahfuz Shaikh on November 06, 2018

Hey folks how are you doing. Need a help. I have a bash script to backup MySQL databases, that runs on a daily cronjob. Everything is working fin... [Read Full]
markdown guide

I think which aws won't work here. It's because CRON jobs run in other ENV than the user's. So you may want to use exact path like /home/USER/aws/installation/folder s3 cp ... or what ever your aws installation it.

Or problem may be in passing ENV variables.

Just try both of the above and do let me know if it works!


Though it's working, I am curious if those work on cron

which mysql
which mysqldump
which gzip

why which aws this is not working, I mean what I am missing?
aws is on /usr/local/bin/aws


It's because CRON Jobs(crontab) runs in different environment than the user. So the CRON doesn't know where users applications are installed(like aws, mysql, gzip etc.)

But CRON by default includes some paths and ENV variables like $HOME , /usr/bin and some others.(Quick google search will tell you everything CRON includes...)

So this way CRON recognizes mysql, mysqldump as they are installed on /usr/bin/. But it doesn't include aws as it's installed in /usr/local/bin/aws/ so you should manually specify it.

I know this is little complicated, even I had similar problem when I was working with whenever gem.

Yeah, it's complicated but you explain well thanks a lot.

code of conduct - report abuse