Controlling time stamps in a bash script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Controlling time stamps in a bash script
# 8  
Old 09-27-2016
Any error messages? I guess it starts but doesn't find the two scripts called. cron only provides a minimalistic environment, so you need to either define your own or use absolute pathnames for scripts.
This User Gave Thanks to RudiC For This Post:
# 9  
Old 09-27-2016
Quote:
Originally Posted by Zooma
Back to this one again. Tried to automate a script called getStats.sh that looks like this:
Code:
#!/bin/bash
./startMeasuring.sh
./collectStats.sh

I go to crontab -e and add this line:
Code:
0-59/5 * * * * /usr/Measurements/getStats.sh

The problem is that nothing happens. I have tried to reboot the computer, but the scheduled task never starts.
Does someone know what the problem is? Or do you know how to figure it out through logs etc?
Cheers/Z
Hello Zooma,

If you want your script to run each 5th minute then could you please try following into your crontab by doing crontab -eand let us know if this helps you.
Code:
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /path/to/script.sh

Thanks,
R. Singh
This User Gave Thanks to RavinderSingh13 For This Post:
# 10  
Old 09-27-2016
cron uses a very minimal path. I suggest setting your own PATH, or sourcing /etc/profile, in your scripts or it may not find all the commands they need.

Code:
0-59/5 * * * * . /etc/profile ; /usr/Measurements/getStats.sh

This User Gave Thanks to Corona688 For This Post:
# 11  
Old 09-27-2016
Just using /etc/profile to set the environment for a user's cron job probably isn't going to help much. There is a good chance you'll also need the user $HOME/.profile, $HOME/.bashrc, or some other user specific initialization script that the script being executed (and any commands it invokes) depend upon. The problem is that you are running a shell script that uses relative pathnames to find scripts to run:
Code:
./startMeasuring.sh
./collectStats.sh

and there is nothing in your script to move into the directory that would make those relative pathnames valid. And, we don't know whether or not those scripts depend on being invoked from a certain directory so they can find other files.

The directory in which cron runs a job is implementation specific, but the likelihood that it will be the current working directory at the time that the user invoked crontab to add that job to the list of jobs cron will execute is extremely small.

Any script being executed by cron needs to be capable of setting up whatever environment variables and it needs to run and needs to be capable of making its current working directory appropriate for it to access any files it needs to access and to put any files it may create in a place where the user will be able to find them when the script completes.
This User Gave Thanks to Don Cragun For This Post:
# 12  
Old 09-28-2016
Alternatives to Crontab?

Thanks for all replies. I tried calling for a more simple file (echo "hello") and it works fine, so it seems that the problem is related to that I try to run scripts that are calling for other scripts (as some of you suggested).

I have close to 20 bash/awk scripts that are located in the /usr/Measurement/ folder. The file that I call every 5th minute with Crontab is supposed to coordinate and run these scripts and then populate a database with the output.

Questions:

1. Is this doable with Crontab or are there too many pitfalls?
2. Is there some other better way of scheduling these tasks? The measurements need to happen exactly every fifth minute, and as the time to run through the ~20 scripts may vary I can't use sleep() or anything else that is relative to the excecution time. Has to be a timer.

Cheers and thanks for all answers!
Z
# 13  
Old 09-28-2016
That's what cron is made for, given its "features" are dealt with, e.g. sourcing various .profile scripts in the beginning of your scripts, as proposed above.
How exact does the start of the various script need to be? Although cron closely interacts with the system clock, there are situations (e.g. heavy system load) wherein starts can be delayed.
This User Gave Thanks to RudiC For This Post:
# 14  
Old 09-28-2016
Thanks Rudi. I will try to fix it and post the "solution" here once done. It doesn't have to be exact, it can be a bit late but not drift.

Cheers,
Z
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Windows & DOS: Issues & Discussions

Cygwin_openssh time stamps

I've installed cygwin_openssh on Windows 2012 R2 and it's working great. My issue is when a file is uploaded say from a different timezone, when it is uploaded, it doesnt pick up the sftp servers time.. Is there a way to fix that? i.e. When someone in PST uploads a file to this server in EST,... (0 Replies)
Discussion started by: MikeAdkins
0 Replies

2. Shell Programming and Scripting

Collecting logs between two time stamps

Hi, please help me to collect the entire log files between two time stamp. for example, I am looking script to collect the entire log between "2015-03-27 15:59" to "2015-03-27 16:15" in the below sample log file. OS : RHEL 6.3 Date/Time : 24 hours format, the time is printing each log... (12 Replies)
Discussion started by: jerryknj
12 Replies

3. Shell Programming and Scripting

How to get the Logs between two Time Stamps?

Hi, I have been working on the error Log script, where errors are pulled from server. I need to pull the data of the error logs between two dates & time, for example : 22/12/2014 20:00:00 22/12/2014 22:00:00 Whatever error have came during this duration. Now the question is the record... (6 Replies)
Discussion started by: amitgpta90
6 Replies

4. Shell Programming and Scripting

Increment time stamps.

Hi Gents. Please can you help me to solve a problem. I have a long list of files, which I need to change the time stamp. -r--r--r-- 1 geo2 geovect 47096216 Feb 8 10:40 00000009.segd -r--r--r-- 1 geo2 geovect 47096216 Feb 8 10:40 00000010.segd -r--r--r-- 1 geo2 geovect 47096216 Feb ... (11 Replies)
Discussion started by: jiam912
11 Replies

5. Shell Programming and Scripting

date time stamps in bash

I'm looking for a way to have the "date" command output the date in a specific format. I'm not familiar with the different ways to use the date command at all. i read up on it, but i dont get how to manipulate it. i know that i can get the date format to give me a format like: 2012-10-13... (6 Replies)
Discussion started by: SkySmart
6 Replies

6. Shell Programming and Scripting

Time difference between two time stamps

Hi Friends, I have 2 varaibles which contain START=`date '+ %m/%d/%y %H:%M:%S'` END=`date '+ %m/%d/%y %H:%M:%S'` i want the time difference between the two variables in Seconds. Plz help. (2 Replies)
Discussion started by: i150371485
2 Replies

7. Shell Programming and Scripting

comparing time stamps

Hello All, I'm generating timestamps (file creation timestamps) for all the files in a directory. I need to compare all the timestamps. for example if i have 4 files and their timestamps are 20091125114556, 20091125114556,20091125114556,20091125114556 respectively. I need to differentiate... (9 Replies)
Discussion started by: RSC1985
9 Replies

8. UNIX for Dummies Questions & Answers

comparing time stamps

Hello All, I'm generating timestamps (file creation timestamps) for all the files in a directory. I need to compare all the timestamps. for example if i have 4 files and their timestamps are 20091125114556, 20091125114556,20091125114556,20091125114556 respectively. I need to differentiate... (1 Reply)
Discussion started by: RSC1985
1 Replies

9. UNIX for Dummies Questions & Answers

Problem with subtracting time stamps in excel..

Hi All, I need an unix script/command to delete the milliseconds from the time stamps so that it becomes compatible with Excel sheet while displaying finally. I have the following data in 2 columns which was obtained with some unix script(awk based) on some log files. Finally i want to... (1 Reply)
Discussion started by: ks_reddy
1 Replies

10. Shell Programming and Scripting

Copying Files in the same order along with time stamps

Hi , I am New to this group and would like to know if someone can help me on this issue : We need to copy some files from a particular directory to another directory in the same order and time stamps .How can this be achieved . For Ex : ./ABC/disk101/XYZ has 1000 files with varying... (2 Replies)
Discussion started by: shyam.appalla
2 Replies
Login or Register to Ask a Question