Sponsored Content
Full Discussion: Search 3 words
Top Forums Shell Programming and Scripting Search 3 words Post 302339456 by susau_79 on Thursday 30th of July 2009 02:25:04 PM
Old 07-30-2009
Quote:
Originally Posted by aigles
Two solutions using awk and gawk
With awk :
Code:
awk '
{ $0 = tolower($0) }
/^[[:space:]]*procedure/ {
   check_procedure();
   procedure = ""
}
{
   procedure = procedure " " $0;
}
END {
   check_procedure();
}
function check_procedure() {
   gsub(/\/\*[^*]*\*\//, "", procedure);
   gsub(/[[:space:]]+/, " ", procedure);
   if (procedure ~/insert into xyz/) {
      split(procedure, f);
      print "procedure",f[2];
   }
}
' inputfile

With gawk :
Code:
awk -v RS=procedure '
{
   gsub(/\n/, " ");
   gsub(/\/\*[^*]*\*\//, "");
   gsub(/[[:space:]]+/, " ")
   $0 = tolower($0);
}
/insert into xyz/ {
   print "procedure",$1
}
' inputfile

Inputfile:
Code:
procedure test1
insert into xyz;
end;
procedure
test2
insert
into
xyz
end;
procedure test3
insert /* asas*/
into xyz
end;
procedure test4
inserting into xyz
end;
procedure test5
insert into abcdef
end;

Output:
Code:
procedure test1
procedure test2
procedure test3

Jean-Pierre.
Thanks for wonderful response. This is working fine for me, however I forget to mention one this, i.e. it could be "procedure" or "function". I need to consider both, however above code only taking care of "procedure". Pls find the latest file and expected output.

Expected output:
procedure test1
function test2
procedure test3

File Contain:
procedure test1
insert into xyz;
end;

function

test2

insert

into
xyz
end;

procedure test3
insert /* asas*/
into xyz
end;

procedure test4
inserting into xyz
end;

Request you to update the command ASAP.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

search for words in file

hi all, i would like to search in a directory. all files they were found shoul be opend and looked about a keyword. if keyword is found i want to see the name of the file. i've rtfm of find and have a command like this : find /etc -exec cat \{}\ | grep KEYWORD but don't work, and : find... (4 Replies)
Discussion started by: Agent_Orange
4 Replies

2. Shell Programming and Scripting

Search and replace words between two keywords

Hi, I have a file which contains the following : select * from test where test_id=1; select id from test1, test2 where test_id=1 and test_id=2; select * from test1, test2, test3 where test_id=4 and test2_id where in (select test2_id from test2); select id1, id2 from test ... (6 Replies)
Discussion started by: vrrajeeb
6 Replies

3. Shell Programming and Scripting

search two words in sed

I've following sed command working fine - sed '/search_pattern1/ !s/pattern1/pattern2/" file Now, I want to search two patterns - search_pattern1 and search_pattern2 . How can put these into above sed statement ? Thanks in advance. (12 Replies)
Discussion started by: ajitkumar2
12 Replies

4. UNIX for Dummies Questions & Answers

search words in different file

Hi, I have 1 - 100 file I want the list of such file which contains word 'internet' Please provide command to do this (3 Replies)
Discussion started by: kaushik02018
3 Replies

5. UNIX for Dummies Questions & Answers

how can i delete words based on search

hi, I have a doubt. how we can remove few words based on search. here im specifying my requirement with example. ALL the words should delete between two words ... those words will ends ** EX : cat infile.txt "HI",ob1**,ob2,ob3,ob4**,ob5,ob6 OUTPUT... (2 Replies)
Discussion started by: spc432
2 Replies

6. Shell Programming and Scripting

want to search for the words in the files

Hi Friends, I have been trying to write the script since morning and reached some where now. but i think i am stuck in the final step. please help I want to search the strings below in red in the be be searched in the directories below. How can i do that in my shell script. Thanks Adi ... (8 Replies)
Discussion started by: asirohi
8 Replies

7. Shell Programming and Scripting

search from a list of words

Hello, I'm trying to write a bash script that will search for words from one list that may be found in another list. Once the record is found, it will create a new text file for each word. For example, list1.txt contains the following: Dog Cat Fish List2.txt contains Dog - Buddy 14... (3 Replies)
Discussion started by: jl487
3 Replies

8. Shell Programming and Scripting

Search between two words

Hello, I try to print out with sed or awk the 21.18 between "S3 Temperature" and "GrdC" in a text file. The blanks are all real blanks no tabs. Only the two first chars from temperture are required. So the "21" i need as output. S3 Temperatur 21.18 GrdC No Alarm ... (3 Replies)
Discussion started by: felix123
3 Replies

9. Shell Programming and Scripting

Search string within a file and list common words from the line having the search string

Hi, Need your help for this scripting issue I have. I am not really good at this, so seeking your help. I have a file looking similar to this: Hello, i am human and name=ABCD. How are you? Hello, i am human and name=PQRS. I am good. Hello, i am human and name=ABCD. Good bye. Hello, i... (12 Replies)
Discussion started by: royzlife
12 Replies

10. Shell Programming and Scripting

Search words in any quote position and then change the words

hi, i need to replace all words in any quote position and then need to change the words inside the file thousand of raw. textfile data : "Ninguno","Confirma","JuicioABC" "JuicioCOMP","Recurso","JuicioABC" "JuicioDELL","Nulidad","Nosino" "Solidade","JuicioEUR","Segundo" need... (1 Reply)
Discussion started by: benjietambling
1 Replies
ldgetpd(3)						     Library Functions Manual							ldgetpd(3)

NAME
ldgetpd - Retrieves procedure descriptor given a procedure descriptor index SYNOPSIS
#include <stdio.h> #include <filehdr.h> #include <sym.h> #include <ldfcn.h> long ldgetpd (ldptr, ipd, ppd ) LDFILE ldptr ; long ipd ; pPDR ipd ; DESCRIPTION
The ldgetpd routine returns a SUCCESS or FAILURE depending on whether the procedure descriptor with index ipd can be accessed. If it can be accessed, the structure pointed to by ppd is filled with the contents of the corresponding procedure descriptor. The isym, iline, and iopt fields of the procedure descriptor are updated to be used in further LD routine calls. The adr field is updated from the symbol refer- enced by the isym field. The PDR cannot be retrieved when: The procedure descriptor table cannot be found. The ipd offset into the procedure descriptor table is beyond the end of the table. The file descriptor that the ipd offset falls into cannot be found. Typically, ldgetpd is called while traversing the table that runs from 0 to SYMHEADER(ldptr).ipdMax - 1. The program must be loaded with the object file access routine library libmld.a. RELATED INFORMATION
ldclose(3), ldopen(3), ldtbseek(3), ldtbread(3), ldfcn(4). delim off ldgetpd(3)
All times are GMT -4. The time now is 03:19 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy