Sponsored Content
Top Forums Shell Programming and Scripting Perl script to match a pattern and print lines Post 302270480 by jatanig on Monday 22nd of December 2008 03:26:46 AM
Old 12-22-2008
Quote:
Originally Posted by ammu
Hi
I have a file (say 'file1')and I want to search for a first occurence of pattern (say 'ERROR') and print ten lines in the file below pattern. I have to code it in PERL and I am using Solaris 5.9.

I appreciate any help with code

Thanks
Ammu
One more Solution:

open(FH, "<file1");
@a=<FH>;
$b=$#a;
for ($n=0;$n<$b;$n++)
{

if ($a[$n]=~/ERROR/)
{
foreach $_ ( @a[$n..($n+10)])
{
print $_;
}
}
}
close(FH);

Last edited by jatanig; 12-22-2008 at 04:33 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl: Printing Multiple Lines after pattern match

Hello People, Need some assistance/guidance. OUTLINE: Two files (File1 and File2) File1 has some ids such as 009463_3922_1827 897654_8764_5432 File2 has things along the lines of: Query= 009463_3922_1827 length=252 (252 letters) More stufff here ... (5 Replies)
Discussion started by: Deep9000
5 Replies

2. Shell Programming and Scripting

sed print all lines after pattern match

HiCan someone show me how to print all lines from a file after a line matching a pattern using sed?Thanks (13 Replies)
Discussion started by: steadyonabix
13 Replies

3. Shell Programming and Scripting

print chunk of lines only if there is a pattern match in between them

Hi All, Please find the sample file below: NAME ID NUMBER -------------------------------------------------------------------------------------------------- --------- abcdefgheija;lksdf ... (13 Replies)
Discussion started by: niel.verty
13 Replies

4. Shell Programming and Scripting

print lines with exact pattern match

I have in a file domain.com. 1909 IN A 1.22.33.44 domain.com. 1909 IN A 22.33.44.55 ns1.domain.com. 1699 IN A 33.44.55.66 ns2.domain.com. 1806 IN A 77.77.66.66 I need to "grep" or "awk" out the lines starting with domain.com. as follows. domain.com. 1909 IN A 1.22.33.44 domain.com.... (3 Replies)
Discussion started by: anilcliff
3 Replies

5. Shell Programming and Scripting

perl script print the lines between two pattern

i have a file as below sample.pl parameter1 argument1 argument2 parameter2 I want out as below argument1 argument2 that is , i want to print all the lines between parameter1 & parameter 2. i tried with the following if($mystring =~ m/parameter1(.*?)parameter2/) (2 Replies)
Discussion started by: roopa
2 Replies

6. Shell Programming and Scripting

Print lines before and after pattern match

I am using Solaris, I want to print 3 lines before pattern match pattern 5 lines after pattern match Pattern is abcd to be searched in a.txt. Looking for the solution in sed/awk/perl. Thanks .. Input File a.txt: ================= 1 2 3 abcd 4 5 6 7 8 (7 Replies)
Discussion started by: manuswami
7 Replies

7. Shell Programming and Scripting

Need one liner to search pattern and print everything expect 6 lines from where pattern match made

i need to search for a pattern from a big file and print everything expect the next 6 lines from where the pattern match was made. (8 Replies)
Discussion started by: chidori
8 Replies

8. Shell Programming and Scripting

Print lines that do not match the pattern

I need to print the lines that do not match a pattern. I tried using grep -v and sed -n '/pattern/!p', but both of them are not working as I am passing the pattern as variable and it can be null some times. Example ........ abcd...... .........abcd...... .........abcd......... (4 Replies)
Discussion started by: sunny1234
4 Replies

9. Shell Programming and Scripting

awk print pattern match line and following lines

Data: Pattern Data Data Data Data Data Data Data Data Data ... With awk, how do I print the pattern matching line, then the subsequent lines following the pattern matching line. Varying number of lines following the pattern matching line. (9 Replies)
Discussion started by: dmesserly
9 Replies

10. Shell Programming and Scripting

Match Pattern and print pattern and multiple lines into one line

Hello Experts , require help . See below output: File inputs ------------------------------------------ Server Host = mike id rl images allocated last updated density vimages expiration last read <------- STATUS ------->... (4 Replies)
Discussion started by: tigerhills
4 Replies
Mojolicious::Routes::Pattern(3pm)			User Contributed Perl Documentation			 Mojolicious::Routes::Pattern(3pm)

NAME
Mojolicious::Routes::Pattern - Routes pattern engine SYNOPSIS
use Mojolicious::Routes::Pattern; # Create pattern my $pattern = Mojolicious::Routes::Pattern->new('/test/:name'); # Match routes my $result = $pattern->match('/test/sebastian'); say $result->{name}; DESCRIPTION
Mojolicious::Routes::Pattern is the core of Mojolicious::Routes. ATTRIBUTES
Mojolicious::Routes::Pattern implements the following attributes. "defaults" my $defaults = $pattern->defaults; $pattern = $pattern->defaults({foo => 'bar'}); Default parameters. "format" my $regex = $pattern->format; $pattern = $pattern->format($regex); Compiled regex for format matching. "pattern" my $pattern = $pattern->pattern; $pattern = $pattern->pattern('/(foo)/(bar)'); Raw unparsed pattern. "quote_end" my $quote = $pattern->quote_end; $pattern = $pattern->quote_end(']'); Character indicating the end of a quoted placeholder, defaults to ")". "quote_start" my $quote = $pattern->quote_start; $pattern = $pattern->quote_start('['); Character indicating the start of a quoted placeholder, defaults to "(". "regex" my $regex = $pattern->regex; $pattern = $pattern->regex($regex); Pattern in compiled regex form. "relaxed_start" my $relaxed = $pattern->relaxed_start; $pattern = $pattern->relaxed_start('*'); Character indicating a relaxed placeholder, defaults to "#". "reqs" my $reqs = $pattern->reqs; $pattern = $pattern->reqs({foo => qr/w+/}); Regex constraints. "symbol_start" my $symbol = $pattern->symbol_start; $pattern = $pattern->symbol_start(':'); Character indicating a placeholder, defaults to ":". "symbols" my $symbols = $pattern->symbols; $pattern = $pattern->symbols(['foo', 'bar']); Placeholder names. "tree" my $tree = $pattern->tree; $pattern = $pattern->tree([ ... ]); Pattern in parsed form. "wildcard_start" my $wildcard = $pattern->wildcard_start; $pattern = $pattern->wildcard_start('*'); Character indicating the start of a wildcard placeholder, defaults to "*". METHODS
Mojolicious::Routes::Pattern inherits all methods from Mojo::Base and implements the following ones. "new" my $pattern = Mojolicious::Routes::Pattern->new('/:action'); my $pattern = Mojolicious::Routes::Pattern->new('/:action', action => qr/w+/); my $pattern = Mojolicious::Routes::Pattern->new(format => 0); Construct a new pattern object. "match" my $result = $pattern->match('/foo/bar'); my $result = $pattern->match('/foo/bar', 1); Match pattern against entire path, format detection is disabled by default. "parse" $pattern = $pattern->parse('/:action'); $pattern = $pattern->parse('/:action', action => qr/w+/); $pattern = $pattern->parse(format => 0); Parse a raw pattern. "render" my $path = $pattern->render({action => 'foo'}); my $path = $pattern->render({action => 'foo'}, 1); Render pattern into a path with parameters, format rendering is disabled by default. "shape_match" my $result = $pattern->shape_match($path); my $result = $pattern->shape_match($path, 1); Match pattern against path and remove matching parts, format detection is disabled by default. SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>. perl v5.14.2 2012-09-05 Mojolicious::Routes::Pattern(3pm)
All times are GMT -4. The time now is 08:50 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy