Sponsored Content
Top Forums UNIX for Dummies Questions & Answers print the line immediately after a regexp; but regexp is a sentence Post 302257633 by ownins on Wednesday 12th of November 2008 05:35:58 PM
Old 11-12-2008
print the line immediately after a regexp; but regexp is a sentence

Good Day,

Im new to scripting especially awk and sed. I just would like to ask help from you guys about a sed command that prints the line immediately after a regexp, but not the line containing the regexp.
sed -n '/regexp/{n;p;}' filename

What if my regexp is 3 word or a sentence. Im using date as my starting point for my logs because its based on a tail alert log that updates daily. sample of it is below:

Completed: ALTER DATABASE RECOVER CANCEL
Starting ORACLE instance (normal)
Thu Nov 13 12:41:34 2008
alter database mount standby database
ORA-1100 signalled during: alter database mount standby database...
Thu Nov 13 12:41:34 2008
ALTER DATABASE RECOVER standby database
Media Recovery Start
ORA-279 signalled during: ALTER DATABASE RECOVER standby database ...
Thu Nov 13 12:41:36 2008
ALTER DATABASE RECOVER CONTINUE DEFAULT
Thu Nov 13 12:41:36 2008
Media Recovery Log /oracle/P03/oraarch/P03arch1_7314.dbf
Thu Nov 13 12:42:15 2008
ORA-279 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...
Thu Nov 13 12:42:15 2008
ALTER DATABASE RECOVER CONTINUE DEFAULT
Thu Nov 13 12:42:15 2008
Media Recovery Log /oracle/P03/oraarch/P03arch1_7315.dbf

Hope you could help me out because im really stuck here for my script.Smilie
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

regexp to get first line of string

Hi everybody for file in * #Bash performs filename expansion #+ on expressions that globbing recognizes. do output="`grep -n "$1" "$file"`" echo "$file: `expr "$output" : '\(^.*$\)'`" done In the above bash script segment, I try to print just the first line of string named... (3 Replies)
Discussion started by: jonas.gabriel
3 Replies

2. Shell Programming and Scripting

regexp to print after a field seperator

Hi, How do i Print anything after a ':' Ex : file1: 1235131(rs32553) I want to print out "1235131(rs32553)" how do i do it. I know we can do this using awk but looking for the right syntax. Any help appreciated. Thanks, Ram (7 Replies)
Discussion started by: ramky79
7 Replies

3. Shell Programming and Scripting

print 2 lines above regexp

I am on a Solaris 10 x86 system sample code before3 before2 before1 group after1 after2 after3 I want to grab the second line above my regexp regexp=group I want to grab ONLY the before2 line I have numerous sed and awk ways of grabbing X line below the regexp, but no luck... (1 Reply)
Discussion started by: snoman1
1 Replies

4. Shell Programming and Scripting

print lines AFTER lines cointaining a regexp (or print every first and fourth line)

Hi all, This should be very easy but I can't figure it out... I have a file that looks like this: @SRR057408.1 FW8Y5CK02R652T length=34 AGCAGTGGTATCAACGCAGAGTAAGCAGTGGTAT +SRR057408.1 FW8Y5CK02R652T length=34 FIIHFF6666?=:88@@@BBD:::?@ABBAAA>8 @SRR057408.2 FW8Y5CK02TBMHV length=52... (1 Reply)
Discussion started by: kmkocot
1 Replies

5. Shell Programming and Scripting

Print lines between a regExp & a blank line

Hi, I have a file, say files_list, as below (o/p of ls -R cmd) $ cat files_list /remote/dir/path/to/file: sub-dir1 sub-dir2 sub-dir3 ... /remote/dir/path/to/file/sub-dir1: remote_file1.csv.tgz <blank line 1> /remote/dir/path/to/file/sub-dir2: remote_file2.csv.tgz <blank... (3 Replies)
Discussion started by: dips_ag
3 Replies

6. Shell Programming and Scripting

awk, sed or perl regexp to print values from file

Hello all According to the following file (orignal one contains 200x times the same structure...) I was wondering if someone could help me to print <byte>??</byte> values example, running this script/command like ./script.sh xxapp I would expect as output: 102 116 112 ./script.sh xxapp2... (2 Replies)
Discussion started by: cabrao
2 Replies

7. Shell Programming and Scripting

sed print first line before regexp and all lines after

Hi All I'm trying to extract the line just above a regexp and all lines after this. I'm currently doing this in two steps sed -n -e "/^+---/{g;p;}" -e h oldfile.txt > modified.txt sed -e "1,/^+---/d" -e "/^$/d" oldfile.txt >>modified.txt Sample sometext will be here sometext will be... (3 Replies)
Discussion started by: Celvin VK
3 Replies

8. Shell Programming and Scripting

Print 4th line back from regexp

I'm looking for a way to print the 4th line back from a regular expression. Kind of like the below but it has to be the 4th line before the regexp. Print the line immediately before regexp, but not the line containing the regexp. sed -n '/regexp/{g;1!p;};h' here is an example of logs(i... (11 Replies)
Discussion started by: senormarquez
11 Replies

9. Shell Programming and Scripting

awk regexp to print repetitive pattern

How to use regexp to print out repetitive pattern in awk? $ awk '{print $0, "-\t-\t-\t-\t-\t-\t-\t-\t-\t-\t-\t-"}' output: - - - - - - - - - - - -I tried following which does not give what I want, of course. awk '{print $0, "-\t{11}-"}' output: - ... (10 Replies)
Discussion started by: yifangt
10 Replies

10. UNIX for Beginners Questions & Answers

awk or sed to print the character from the previous line after the regexp match

Hi All, I need to print the characters in the previous line just before the regular expression match Please have a look at the input file as attached I need to match the regular expression ^ with the character of the previous like and also the pin numbers and the output file should be like... (6 Replies)
Discussion started by: kshitij
6 Replies
GRCAT(1)						      General Commands Manual							  GRCAT(1)

NAME
grcat - read from standard input, colourise it and write to standard output SYNOPSIS
grcat configuration DESCRIPTION
configuration is a name of a configuration file. Directories ~/.grc/, /usr/local/share/grc/, /usr/share/grc/ are searched for the file (in this order). If the file is not found, it is assumed to be an absolute path of a configuration file located elsewhere. Configuration file consists of entries, one per regexp, entries are separated with lines with first character non-alphanumeric (except #). Lines beginning with # or empty lines are ignored. Each entry consists of several lines. Each line has form: keyword=value where keyword is one of: regexp, colours, command, skip, count. Only regexp is mandatory, but it does not have much sense by itself unless you specify at least a colour or command keyword as well. regexp is the regular expression to match colours is the list of colours, separated by commas (you can specify only one colour), each colour per one regexp group specified in reg- exp. command is command to be executed when regexp matches. Its output will be mixed with normal stdout, use redirectors ( >/dev/null) if you want to supress it. skip can be either yes, or no, if yes, the matched line will be skipped and not displayed in output. Default is no. count is one of words: once, more, or stop. once means that if the regexp is matched, its first occurrence is coloured and the program will continue with other regexp's. more means that if there are multiple matches of the regexp in one line, all of them will be coloured. stop means that the regexp will be coloured and program will move to the next line (i.e. ignoring other regexp's) Regular expressions are evaluated from top to bottom, this allows nested and overlapped expressions. (e.g. you colour everything inside parentheses with one colour, and if a following expression matches the text inside parentheses, it will be also coloured) OPTIONS
None so far. SEE ALSO
grc(1) AUTHOR
Written by Radovan Garabik <garabik @ kassiopeia.juls.savba.sk> GRCAT(1)
All times are GMT -4. The time now is 10:32 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy