Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I had set a cron job:

20 * * * * /usr/bin/sh /home/lucky/myfile.sh

The main problem is that at the schedule time, there is an error: "mail have sent to /var/spool/mail/lucky".

The contents of myfile.sh is:

mkdir jh
cd jh 
share|improve this question
    
This may help you: help.ubuntu.com/community/CronHowto –  PeppeDAlterio Sep 27 '13 at 18:18
    
if myfile.sh set as executable? –  rogerdpack Sep 27 '13 at 18:48

2 Answers 2

This is not ok for a script which is set as a cron job:

mkdir jh
cd jh 

You should give the full path where jh directory must to be created. Also, in this path you should have permission to create new files/directories.

For example, your script should look like:

#!/bin/sh

mkdir /home/lucky/jh
cd /home/lucky/jh

Also /usr/bin/sh is not the right path for sh. The right path is /bin/sh. You can check this with whereis sh command. And even so, your cron job should look like:

20 * * * * /home/lucky/myfile.sh

Don't forget to make the script executable:

chmod +x /home/lucky/myfile.sh
share|improve this answer

The path where this seems to be creating the folder at is / . This is because the crontab requires full path to folder and files in all the files that it executes .

So the path in the myfile.sh should be

mkdir <absolutePath>/jh

cd <absolutePath>/jh

20 * * * * /usr/bin/sh /home/lucky/myfile.sh This line is correct though you should check the path to see if sh exists at /usr/bin/sh or not

If you are in a hurry to start writing crontab this link has pretty good examples

http://www.thegeekstuff.com/2009/06/15-practical-crontab-examples/

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.