Unfortunately you didn't define the record terminator which would define the point at which to print a line. And, the records are non-uniformly structured: you have "incomplete" records (rec 2) and records with duplicate field entries (rec 3). You need to define very clearly and accurately what to extract and what to print, and adapt the script accordingly.
I'm surprised when an awk script is written in that way, I almost don't understan the logic to customize it.
The record initiator will be always the line STAGE = 1
The Record terminator will be the empty line before the next Record Initiator. The issue is that in the original file the records with duplicate fields (rec 3) has empty lines before the occurence of next Record Initiator. And between Record Terminator and next Record Initiator (in green) could be more than one empty line and some garbaje lines (in red).
At the end of file appears and END string.
This would be a better representation of input file:
Code:
some garbaje
some garbaje
some garbaje
STAGE = 1
ID = 0
NAME = JFMSC
TYPE = MLRR
DFRUL = PERMISSION
ADDR = 1001
RRUL = PERMISSION
SPRR = TRUE
ISGALW = FALSE
ISUTWD = FALSE
some garbaje
some garbajeSTAGE = 1
ID = 2
NAME = PLLSJS
TYPE = MLRR
DFRUL = PERMISSION
some garbaje
some garbajeSTAGE = 1
ID = 4
NAME = AAAARR
TYPE = MLRR
DFRUL = RESTRICT
ADDR = 3553
RRUL = PERMISSION
SPRR = FALSE
ISGALW = FALSE
ISUTWD = FALSE
ADDR = 66444
RRUL = PERMISSION
SPRR = FALSE
ISGALW = FALSE
ISUTWD = FALSE
ADDR = 890087
RRUL = PERMISSION
SPRR = FALSE
ISGALW = FALSE
ISUTWD = FALSE
some garbaje
some garbajeSTAGE = 1
ID = 0
NAME = PPROOA
TYPE = RRHN
DFRUL = PERMISSION
ADDR = 7034
RRUL = PERMISSION
SPRR = FALSE
ISGALW = FALSE
ISUTWD = FALSE
--- END
Last edited by Ophiuchus; 04-14-2018 at 11:59 PM..
I was sure there was a way to put a timestamp ina logfile but I can't seem to figure out how.
What I would like to do is after the last messages in the rptmgr.err log is put a timestamp so I know the next time I look whats new. I am using AIX 5.1
any help will great
Thanks (2 Replies)
Hi,
I'm trying to strip all lines between two headers in a file:
### BEGIN ###
Text to remove, contains all kinds of characters
...
Antispyware-Downloadserver.com (Germany)=http://www.antispyware-downloadserver.c
om/updates/
Antispyware-Downloadserver.com #2... (3 Replies)
Hi to all,
I have a file where the subject could contain "Summarized Availability Report" or only "Summarized Report"
If the subject is "Summarized Availability Report" I want to apply it Scrip1 and if the subject is "Summarized Report"
I want to apply it Scrip2.
1-) I would like you... (5 Replies)
Hi ,
I have a typical situation. I have 4 files and with different headers (number of headers is varible ).
I need to make such a merged file which will have headers combined from all files (comman coluns should appear once only).
For example -
File 1
H1|H2|H3|H4
11|12|13|14
21|22|23|23... (1 Reply)
Hello friends!
Each line of my input file has this format:
word<TAB>tag1<blankspace>lemma<TAB>tag2<blankspace>lemma ... <TAB>tag3<blankspace>lemma
Of this file I need to eliminate all the repeated tags (of the same word) in a line, as in the example here below, but conserving both (all) the... (2 Replies)
The question is not as simple as the title... I have a file, it looks like this
<string name="string1">RZ-LED</string>
<string name="string2">2.0</string>
<string name="string2">Version 2.0</string>
<string name="string3">BP</string>
I would like to check for duplicate entries of... (11 Replies)
Hi below is the input file, i need to find repeated words and sum up the values of it which is second field from the repeated work.Im trying but getting no where close to it.Kindly give me a hint on how to go about it
Input
fruits,apple,20,fruits,mango,20,veg,carrot,12,veg,raddish,30... (11 Replies)
I posted this a few days ago and got some help (Putting together substrings if pattern is matched - Page 2 | Unix Linux Forums | Shell Programming and Scripting)
But I am now stuck on an issue that is similar but not the same really. I want to join parts of one line with parts of another line... (8 Replies)
I cannot seem to get what should be a simple awk one-liner to work correctly and cannot figure out why. I would like to use patterns from a specific field in one file as regex to search for matching strings in the entire line ($0) of another file.
I would like to output the lines of File2 which... (1 Reply)
i need to add 2 string variables into a positioning array , repeatedly - in loop.
First string in $2, second to $3 then up to the desired count incrementing the "position".
Using set -- alone does not increment the count so I end up with 2 variables in the array.
How do I increment the... (7 Replies)
Discussion started by: annacreek
7 Replies
LEARN ABOUT DEBIAN
linux-version
LINUX-VERSION(1) General Commands Manual LINUX-VERSION(1)NAME
linux-version - operate on Linux kernel version strings
SYNOPSIS
linux-version compare VERSION1 OP VERSION2
linux-version sort [--reverse] [VERSION1 VERSION2 ...]
linux-version list [--paths]
DESCRIPTION
linux-version operates on Linux kernel version strings as reported by uname -r and used in file and directory names. These version strings
do not follow the same rules as Debian package version strings and should not be compared as such or as arbitrary strings.
compare VERSION1 OP VERSION2
Compare version strings, where OP is a binary operator. linux-version returns success (zero result) if the specified condition is
satisfied, and failure (nonzero result) otherwise. The valid operators are: lt le eq ne ge gt
sort [--reverse] [VERSION1 VERSION2 ...]
Sort the given version strings and print them in order from lowest to highest. If the --reverse option is used, print them in order
from highest to lowest.
If no version strings are given as arguments, the version strings will instead be read from standard input, one per line. They may
be suffixed by arbitrary text after a space, which will be included in the output. This means that, for example:
linux-version list --paths | linux-version sort --reverse
will list the installed versions and corresponding paths in order from highest to lowest version.
list [--paths]
List kernel versions installed in the customary location. If the --paths option, show the corresponding path for each version.
AUTHOR
linux-version and this manual page were written by Ben Hutchings as part of the Debian linux-base package.
30 March 2011 LINUX-VERSION(1)