Infos on CRONRGF.CMD ==================== CRONRGF.CMD was modelled after the "cron"-utility of Unix. It allows you to specify in a control files on which times and dates a command should be executed repeatedly. CRONRGF.CMD starts and runs forever, dispatching the commands at the given times. Please check ATRGF.CMD which was modelled after the OS/2-LAN-command "at" for another variant having features not found in CRONRGF.CMD. Usage ===== CRONRGF [/T] [/M] [/R[nn]] [/B] cronfile Reads file 'cronfile' and executes command[s] repeatedly according to it. 'cronfile' has to be formatted like in Unix; unlike the Unix-version a '%' is treated like any other character; empty lines and ones starting with a semi-colon (;) or a (#) are ignored. Switch '/T[estmode]': the cronfile is read and the user is presented with the date/times and commands to be executed upon them. The planned and truly scheduled times are written to the log-file. Switch '/M[idnight]': all commands which were scheduled the same day, starting from midnight to the time of first invocation are executed once. Switch '/R[nn]': check cronfile at least every 'nn' (default 60) minutes whether it changed; if so, reread it immediately and set the new schedule-times. If set, the cronfile will be checked for changes after executing commands Switch '/B[lackAndWhite]': do not colorize output strings (e.g. for usage in more, less etc.). This switch merely suppresses the ANSI-color-sequences attached to the strings. example: CRONRGF /TEST testcron execute statements in file 'testcron' in testmode example for a control-file: ; Sample file for CRONRGF.CMD ; ; This is a comment (starts with a semicolumn) # This is a comment too (starts with the Unix-comment symbol) ; empty lines are ignored too... ; LAYOUT OF THE CRON-FILE: ; * * * * * command ; or ; minute hour day month weekday command ; where minute ranges from 0-59, ; hour ranges from 0-23, ; day ranges from 1-31, ; month ranges from 1-12, ; weekday ranges from 1-7 (1 = Monday, 2 = Tuesday, ..., 7 = Sunday) ; ; you can give a list of values, separated by a comma (,), e.g. "1,3,7" ; you can give a range of values, separated by a dash (-), e.g. "1-5" ; you can give a star (*) instead of a value, meaning entire range of all valid values ; ; the given command is only executed when all criteriae are fullfilled ! ; ; restriction: unlike to Unix, the percent-sign (%) is treated like any other character and ; not as a new-line ; # the following command "@ECHO HI, I am Nr. 1 to be echoed every minute" would be # executed every minute * * * * * @ECHO Hi, I am Nr. 1 to be echoed every minute & pause 59 23 31 12 5 command, one minute before year's end, and only if the last day is a Friday ; comment: every year at 17:45 on June 7th: 45 17 7 6 * dir c:\*.exe ; comment: on every full quarter of an hour ; at midnight, 6 in the morning, noon, 6 in the evening ; on the 1st, 15th and 31st of ; every month on 0,15,30,45 0,6,12,18 1,15,31 * * backup c:\*.* d:\ /s ; at noon on every day, if it is a weekday (Mo-Fri): 0 12 * * 1-5 XCOPY Q:\* D:\ /s ; every minute in January, March, May, July, September and November: * * * 1,3,5,7,9,11 * dir c:\*.cmd # at the last day of the year at 23:01, 23:02, 23:03, 23:05, 23:20, 23:21, # 23:22, 23:23, 23:24, 23:25, 23:30, 23:31, 23:32, 23:33, 23:34, 23:35, # 23:59 1,2,3,5,20-25,30-35,59 23 31 12 * COPY D:\*.log E:\backup ; make backups of OS2.INI and OS2SYS.INI on every first monday of a month, ; at 9 o'clock in the morning 0 9 1-7 * 1 showini /bt d:\os2\os2.ini 0 9 1-7 * 1 showini /bt d:\os2\os2sys.ini ; at midnight on every month: 0 0 1 * * tapebackup /all ; execute every minute, no restrictions: * * * * * @ECHO Hi, I am Nr. 2 to be echoed every minute & pause # execute every minute in January, February, March only ! * * * 1,2,3 * any-command any-arguments # execute every day at midnight 0 0 * * * any-command any-arguments # execute every wednesday at midnigth ! 0 0 * * 3 any-command any-arguments # this is a comment which concludes the sample file =========================== Rony G. Flatscher, Vienna/Austria/Europe, Wirtschaftsuniversitaet Wien 1992-11-08