I want to get details of last runned cron job in my machine . Because if the cron is interrupted due to some internal problems . I want to rerun the cron job .
Note : I didn't have root user privilege .
You can see the date, time, user and command of previously executed cron jobs using:
grep CRON /var/log/syslog
This will show all cron jobs. If you only wanted to see jobs run by a certain user, you would use something like this:
grep CRON.*\(root\) /var/log/syslog
Note that cron logs at the start of a job so you may want to have lengthy jobs keep their own completion logs; if the system went down halfway through a job, it would still be in the log!
Edit: If you don't have root access, you will have to keep your own job logs. This can be done simply by tacking the following onto the end of your job command:
&& date > /home/user/last_completed
/home/user/last_completed would always contain the last date and time the job completed. You would use
>> instead of
> if you wanted to append completion dates to the file.
You could also achieve the same by putting your command in a small bash or sh script and have cron execute that file.
#!/bin/bash [command] date > /home/user/last_completed
The crontab for this would be:
* * * * * bash /path/to/script.bash