Sponsored Content
Top Forums Shell Programming and Scripting Need to extract text repetitively between two patterns Post 302771624 by Vignesh58 on Thursday 21st of February 2013 05:58:56 AM
Old 02-21-2013
Need to extract text repetitively between two patterns

Hi All,

I want to extract the text between some pattern which occurs repeatedly in a file. For example my input is like,
Code:
   [javac] [checking .....
   [javac] [checking .....
   [javac] [checking .....
   [javac] [checking .....
   [javac] /home/.....
             ..........java:25: cannot find symbol
    [javac] 
    [javac]............
    [javac] /home/......
    [javac] [loading java/lang/Math.class(java/lang:Math.class)]
    [javac] /home/.......
    [javac] [checking.......
    [javac] [checking.......
    [javac] [checking.......

I want to display text between "[javac] /home" upto "[javac] [" including these lines.

My output should look like..
Code:
    [javac] /home/.....
             ..........java:25: cannot find symbol
    [javac] 
    [javac]............
    [javac] /home/......
    [javac] [loading ...
    [javac] /home/.......
    [javac] [checking.......

Please help me to do that in shell script.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

To extract the string between two patterns

Sample input: Loading File System Networking in nature Closing the System now i need to extract the patterns between the words File and Closing: i.e. sample output: System Networking in Nature Thanks in advance !!!!!!!!!!!!!!!!! (6 Replies)
Discussion started by: aajan
6 Replies

2. Shell Programming and Scripting

Extract certain patterns from file.

Hi All, I tried extracting this pattern using grep but it did not work. What I have is a file which has contents like this: file:///channel/add-adhd.html file:///channel/allergies.html file:///channel/arthritis.html http://mail.yahoo.com/ http://messenger.yahoo.com/... (2 Replies)
Discussion started by: shoaibjameel123
2 Replies

3. Shell Programming and Scripting

Extract patterns and copy them in different files

Hi All, I have a file which looks like this: Name1;A01 Name2;A01.047 Name3;A01.047.025 Newname1;B01 NewName2;B01.056.32 NewName3;B04.09.43 NewNewName1;C01.03 NewNewName2;C01.034.44As you can see, in the file there is some name and followed by the name is some identifier. These... (5 Replies)
Discussion started by: shoaibjameel123
5 Replies

4. Shell Programming and Scripting

PERL: extract lines between two patterns

Hello Perl-experts, I am new to perl and need help to solve a problem. I have a table in below format. <Text A> <Pattern1> A Value B Value C Value D Value <Pattern2> <Text B> This table is in file1. I want to extract lines between Pattern1 and Pattern2 and write it into file2.... (11 Replies)
Discussion started by: mnithink
11 Replies

5. UNIX for Dummies Questions & Answers

Search and extract matching patterns

%%%%% (9 Replies)
Discussion started by: lucasvs
9 Replies

6. Shell Programming and Scripting

Extract line between two patterns

Hi All, I need a script to extract a lines between two patterns.I have done this using grep,cut,tail and head.But its very slow, because my input file contain more than a lakh. COMMAND:XXXXXXXXXXXXXXXXXXXX yyyyy zzzzzz REQUESTSTRING:aaaaaaaaaaaaaaa;11111 222222 333333... (4 Replies)
Discussion started by: rajamohan
4 Replies

7. Shell Programming and Scripting

Extract all the lines in between of 2 patterns and merge them

Hi, I have a file with many lines and need to extract lines between 2 patterns (AAA and BBB) and merge all the in-between lines into single line separated by space. $ cat file1 blah blah blah blah AAA 1 2 3 blah BBB blah blah blah blah blah blah blah blah blah AAA 5 6 blah blah... (4 Replies)
Discussion started by: prvnrk
4 Replies

8. Debian

Extract Lines Between 2 patterns if exist...

Hello. I am not having luck with sed or awk today. $ echo "$BrackListFinal" DSCF3649-DSCF3651_Brkt DSCF3649.JPG 2014-07-21 13:34:44 On 1 DSCF3649.RAF 2014-07-21 13:34:44 On 1 DSCF3650.JPG 2014-07-21 13:34:45 On 2 DSCF3650.RAF 2014-07-21 13:34:45 On 2... (3 Replies)
Discussion started by: DSommers
3 Replies

9. Shell Programming and Scripting

Extract all the sentences that matched two patterns

Hi I have two lists of patterns named A and B consisting of around 200 entries in each and I want to extract all the sentences from a big text file which match atleast one pattern from both A and B. For example, pattern list A consists of : ama ani ahum mari ... ... and pattern... (1 Reply)
Discussion started by: my_Perl
1 Replies

10. Shell Programming and Scripting

Extract lines between patterns

I have a list in the format below, how do I read through the list and extract the lines between the ##START## and ##END##, so i can check for specific values between each ##START## & ##END## pattern ##START## RANDOMTEXT DFGSD SDFSDF ##END## ##START## morestuff sdfggfg sdfsdf... (10 Replies)
Discussion started by: squrcles
10 Replies
strextract(1int)														  strextract(1int)

Name
       strextract - batch string extraction

Syntax
       strextract [ -p patternfile ] [ -i ignorefile ] [ -d ] [ source-program...  ]

Description
       The  command extracts text strings from source programs.  This command also writes the string it extracts to a message text file.  The mes-
       sage text file contains the text for each message extracted from your input source program. The command names the file by appending .msg to
       the name of the input source program.

       In  the	source-program argument, you name one or more source programs from which you want messages extracted. The command does not extract
       messages from source programs included using the directive. Therefore, you might want a source program  and  all  the  source  programs	it
       includes on a single command line.

       You  can  create a patterns file (as specified by patternfile ) to control how the command extracts text. The patterns file is divided into
       several sections, each of which is identified by a keyword. The keyword must start at the beginning of a new line, and its first  character
       must  be  a dollar sign ($).  Following the identifier, you specify a number of patterns. Each pattern begins on a new line and follows the
       regular expression syntax you use in the routine. For more information on the patterns file, see the(5int) reference page.

       In addition to the patterns file, you can create a file that indicates strings that ignores.  Each line in this ignore file contains a sin-
       gle string to be ignored that follows the syntax of the routine.

       When you invoke the command, it reads the patterns file and the file that contains strings it ignores.  You can specify a patterns file and
       an ignore file on the command line.  Otherwise, the command matches all strings and uses the default patterns file.

       If finds strings which match the directive in the pattern file, it reports the strings to standard error (stderr.) but does not	write  the
       string to the message file.

       After running you can edit the message text file to remove text strings which do not need translating before running

       It is  recommended that you use command	as a visual front end to the command rather than running directly.

Options
       -i   Ignore  text  strings specified in ignorefile.  By default, the command searches for ignorefile in the current working directory, your
	    home directory, and

	    If you omit the option, recognizes all strings specified in the patterns file.

       -p   Use patternfile to match strings in the input source program. By default, the command searches for the pattern  file  in  the  current
	    working directory, your home directory, and finally

	    If you omit the option, the command uses a default patterns file that is stored in

       -d   Disables warnings of duplicate strings. If you omit the option, prints warnings of duplicate strings in your source program.

Restrictions
       Given the default pattern file, you cannot cause to ignore strings in comments that are longer than one line.

       You can specify only one rewrite string for all classes of pattern matches.

       The command does not extract strings from files include with directive. You must run the commands on these files separately.
       % strextract -p c_patterns prog.c prog2.c
       % vi prog.msg
       % strmerge -p c_patterns prog.c prog2.c
       % gencat prog.cat prog.msf prog2.msf
       % vi nl_prog.c
       % vi nl_prog2.c
       % cc nl_prog.c nl_prog2.c -li

       In this example, the command uses the file to determine which strings to match. The input source programs are named and

       If  you	need  to  remove  any  of the messages or extract one of the created strings, edit the resulting message file, Under no conditions
       should you add to this file. Doing so could result in unpredictable behavior.

       You issue the command to replace the extracted strings with calls to the message catalog.  In response to this command, creates the  source
       message catalogs, and and the output source programs, and

       You must edit and to include the appropriate and function calls.

       The command creates a message catalog and the command creates an executable program.

See Also
       intro(3int), gencat(1int), extract(1int), strmerge(1int), regex(3), catopen(3int), patterns(5int)
       Guide to Developing International Software

																  strextract(1int)
All times are GMT -4. The time now is 08:48 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy