Sponsored Content
Full Discussion: Parsing cron data with awk
Top Forums Shell Programming and Scripting Parsing cron data with awk Post 302766483 by Don Cragun on Monday 4th of February 2013 10:17:07 PM
Old 02-04-2013
Quote:
Originally Posted by Chubler_XL
A cronjob that runs every 6 mins would look like (V7 standard)
Code:
0,6,12,18,24,30,36,42,48,54 * * * *

or
Code:
0-54/6 * * * *

You should also consider some of these (should they be listed or not?):
Code:
* * * * 2 # every min on tuesdays
20-30 * * * * * # every min between 20 and 30 past hour
2-58/2 9-17 * * * # every 2 mins 9am - 5pm

Many systems still don't support / in the time fields (so check your cron and crontab man pages before worrying about /.

If your system supports / and one appears in the first field and the number after the / is less than 15, flag it.
Otherwise, if there is a - in the first field, flag it.
Otherwise, if there are one or more commas in the first field, sort the values separated by the commas and if the difference between any two adjacent values in the sorted list is less than 15, flag it. If the difference between the last value in the list and the (1st value in the list + 60) is less than 15, you have to determine if the hour field will ever yield consecutive hours. If it does, flag it. (Note that consecutive hours could also be hour 23 on one day and hour 0 on the next day, ... ... ...) Sorting the values in the minutes field is necessary because a minutes field of:
Code:
0,20,40,10,50,30

results in the job running every 10 minutes, but no two adjacent values are within 15 minutes of each other.

The logic isn't that hard, but there are enough special cases about which fields are considered depending on which fields have values specified in a crontab entry that this is not going to be a trivial task.

Good luck.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Parsing XML dynamic data via awk?

I am trying to use a line of output in an XML file as input in another new XML file for processing purposes via a shell script. Since I am a newbie though, I'm not sure how to do this since the data is different everytime. I am using this technique with static data right now: echo -n "Running... (5 Replies)
Discussion started by: corwin43
5 Replies

2. Shell Programming and Scripting

Parsing the data

Hi I need to parse the following data using shell script Table ----- stage4n_abc 48 stage4o_abcd 4 adashpg_abc_HeartBeat 1 stage4l_asc 168 Can anyone gimme the solution. I want each value to get stored in an array or variable and want the value to be greped from another file.... (1 Reply)
Discussion started by: Archana.Dheepan
1 Replies

3. Shell Programming and Scripting

Question about Awk for Data Parsing

Hi, I am doing some data parsing for some economics research. I was recently exposed to shell script and am brand new to awk. I have a large csv file (like 10G) and I would like to make it a lot smaller with awk, but it is a bit tricky for me and I haven't been able to get it yet. I would... (5 Replies)
Discussion started by: EconResearch
5 Replies

4. Shell Programming and Scripting

Parsing data

Hi all , I have a file with billing CDR records in it. I need to parse that information (row format) . The purpose is to compare full content. The example I have given below is a single line record but it has two portions, (1) the line start with “!” and end with “1.2.1.8” and (2) second part... (5 Replies)
Discussion started by: jaygamini
5 Replies

5. Shell Programming and Scripting

Parsing cron with sed

Hello I want to convert my cron list into a csv Can you please help me with sed ? eg: Convert #06,21,36,51 * * 1,2 * (. ~/.profile ; timex /some/path/script -30 -15) >> /some/path/logfile2 2>&1 * * * * * (. ~/.profile ; timex /some/path/script2) > /some/path/logfile2 To:... (1 Reply)
Discussion started by: drbiloukos
1 Replies

6. Shell Programming and Scripting

Parsing the data

Hi friends, I need to parse the following data in the given format and get the desired output. I need a function, which takes the input as a parameter and the desired output will be returned from the function. INPUT(single parameter as complete string) A;BCF;DFG;FD ... (3 Replies)
Discussion started by: sumesh.1988
3 Replies

7. Shell Programming and Scripting

Help in Parsing data

I have below string Transaction_ID:SDP-DM-151204679 , Transaction_DateTime:2011-02-11 00:00:15 GMT+05:30 , Transaction_Mode:WAP , Circle_ID:4 , Circle_Name:BJ ,Zone: , CustomerID:B_31563486 , MSISDN:7870904329 , IMSI:405876122068099 , IMEI: , Sub_Profile:Pre-Paid , CPID:Nazara , CPNAME:Nazara ,... (6 Replies)
Discussion started by: poweroflinux
6 Replies

8. Shell Programming and Scripting

Data parsing

Hi, I do have a data file which is divided into compartments by ---------. I would like to extract (parse) some of the data and numbers either using awk or sed The file has the format: CATGC Best GO enrichment: Genes/ORF that have the motifs (genes are sorted by max(pa+pd+po)): ... (6 Replies)
Discussion started by: Lucky Ali
6 Replies

9. Shell Programming and Scripting

Help with parsing data with awk , eliminating unwanted data

Experts , Below is the data: --- Physical volumes --- PV Name /dev/dsk/c1t2d0 VG Name /dev/vg00 PV Status available Allocatable yes VGDA 2 Cur LV 8 PE Size (Mbytes) 8 Total PE 4350 Free PE 2036 Allocated PE 2314 Stale PE 0 IO Timeout (Seconds) default --- Physical volumes ---... (5 Replies)
Discussion started by: rveri
5 Replies

10. Shell Programming and Scripting

Parsing XML (and insert data) then output data (bash / Solaris)

Hi folks I have a script I wrote that basically parses a bunch of config and xml files works out were to add in the new content then spits out the data into a new file. It all works - apart from the xml and config file format in the new file with XML files the original XML (that ends up in... (2 Replies)
Discussion started by: dfinch
2 Replies
crontab(1)						      General Commands Manual							crontab(1)

NAME
crontab - user job file scheduler SYNOPSIS
[file] [username] [username] [username] DESCRIPTION
The command manages a crontab file for the user. You can use a crontab file to schedule jobs that are executed automatically by (see cron(1M)) on a regular basis. The command has four forms: Create or replace your crontab file by copying the specified file, or standard input if file is omitted or is specified as file, into the crontab directory, The name of your crontab file in the crontab directory is the same as your effective user name. If the compartmentalization feature is enabled, the crontab file is your effective user name followed by a colon followed by the compartment id from which the crontab file is created. Edit a copy of the user's crontab file, or create an empty file to edit if the crontab file does not exist. When editing is complete, the file will be copied into the crontab directory as the user's crontab file. If the compartmentalization feature is enabled, it only edits a copy of the user's crontab file from the compartment that the crontab files were created from. Lists the user's crontab file. If the compartmentalization feature is enabled, it only lists the crontab files from the compartment that the crontab files were created from. Remove the user's crontab file from the crontab directory. If the compartmentalization feature is enabled, it only removes the crontab files from the compartment that the crontab files were created from. Only a privileged user can use username following the or options, to edit, list, or remove the crontab file of the specified user. The entries in a crontab file are lines of six fields each. The fields are separated by spaces or tabs. The lines have the following for- mat: minute hour monthday month weekday command The first five are integer patterns that specify when the sixth field, command, should be executed. They can have the following ranges of values: minute The minute of the hour, hour The hour of the day, monthday The day of the month, month The month of the year, weekday The day of the week, Each pattern can be either an asterisk meaning all legal values, or a list of elements separated by commas. An element is either a number in the ranges shown above, or two numbers in the range separated by a hyphen (meaning an inclusive range). Note that the specification of days can be made in two fields: monthday and weekday. If both are specified in an entry, they are cumulative. For example, runs command at midnight on the first and fifteenth of each month, as well as every Monday. To specify days in only one field, set the other field to asterisk For example, runs command only on Mondays. The sixth field, command (the balance of a line including blanks in a crontab file), is a string that is executed by the shell at the spec- ified times. A percent character in this field (unless escaped by a backslash is translated to a newline character, dividing the field into "lines". Only the first "line" (up to a or end-of-line) of the command field is executed by the shell. Any other "lines" are made available to the command as standard input. Blank lines and those whose first non-blank character is will be ignored. invokes the command from the user's directory with the POSIX shell, It runs in the queue (see queuedefs(4)). supplies a default environment for every shell, defining: Users who desire to have their executed must explicitly do so in the crontab entry or in a script called by the entry. You can execute if your name appears in the file If that file does not exist, you can use if your name does not appear in the file If only exists and is empty, all users can use If neither file exists, only the user can use The files consist of one user name per line. Security Restrictions If the compartmentalization feature is enabled, and invoke the jobs from the compartment that the jobs were created from. Note that cre- ates the job files in Hence, if the command is invoked from a compartment which has no write access to this directory and which disallows the privilege, fails to schedule the jobs. See compartments(5) and privileges(5) for more information. EXTERNAL INFLUENCES
Environment Variables determines the interpretation of text within file as single and/or multibyte characters. determines the language in which messages are displayed. If or is not specified in the environment or is set to the empty string, the value of is used as a default for each unspecified or empty variable. If is not specified or is set to the empty string, a default of "C" (see lang(5)) is used instead of If any internationalization variable contains an invalid setting, behaves as if all internationalization variables are set to "C". See environ(5). determines the editor to be invoked when option is specified. The default editor is vi. International Code Set Support Single-byte and multibyte character code sets are supported. WARNINGS
Be sure to redirect the standard output and standard error from commands. If this is not done, any generated standard output or standard error is mailed to the user. FILES
Main cron directory List of allowed users List of denied users Accounting information Directory containing the crontab files SEE ALSO
sh(1), cron(1M), queuedefs(4), compartments(5), privileges(5). STANDARDS CONFORMANCE
crontab(1)
All times are GMT -4. The time now is 03:20 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy