The Question is:
I am a novice VMS administrator, I am trying to submit a job in queue and want
it to execute every two hours. I did the following and it executes only once.
submit cdrclean_ftp.com /after="today+2:0" /retain=always
Any help is appreciated.
PS do not tell me that I have to have 12 different entries in the Batch Queue
to accomplish this.
The Answer is :
These periodic batch-processing applications usually re-submit
themselves, or a process scheduling application is installed,
configured and used.
If you want to execute next job two hours from the current time
using a batch job, you can use a command such as the following:
$ submit cdrclean_ftp.com /after="+0-2:0"
Note that this will drift over time, as there will be a finite
time between the start of the job and the SUBMIT command, so
the jobs will actually execute slighty more than 2 hours apart.
If you want to be more precise, for example, execute the job at
02:00, 04:00, 06:00 etc... then you'll have to parse the
current time and construct the next scheduled time:
$ NextHour=(ThisHour/2 + 1) * 2 ! Round up to next even hour
$ SUBMIT cdrclean_ftp.com /after="''NextHour':00"
Alternatively, you can have a single batch job requeue itself
using /AFTER=TOMORROW, and have it immediately queue twelve jobs
using TODAY+2:00, TODAY+4:00, etc.
Related discussions include (4454), (1373), (6981), and discussions
of the f$getqui lexical are available in existing discussions
including the following topics: (813), (1240), (2159), (3951),
(4546), (4568), (4903), (5188), (5471), (5567), (5651), (5793),
(5982), (6315), (6877), (6944), etc.