case-insensitive search with AWK


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting case-insensitive search with AWK
# 8  
Old 09-03-2009
Quote:
Originally Posted by sam25
so how we can make a case-insensitive search for below command

awk '/str1/ && /str2/ && /str3/' filename
just like I outlined above.......
Code:
awk 'tolower(str1) ~ tolower($0)' filename

# 9  
Old 09-03-2009
thnx vgersh99

Here is the complete problem.

i want to perform logical AND operation for search. i am passing a space separated string to a variable from web application.

below is my code

Code:
KEY="space separated string from web application"
KEY1=`echo $KEY|sed -e 's/ /\/ \&\& \//g'`
awk "/$KEY1/" filename

it is working but not case insensitive.
Any help would be appreciated.

Regards,
Sam

Last edited by vgersh99; 09-03-2009 at 04:31 PM.. Reason: code tags, PLEASE!
# 10  
Old 09-03-2009
If you are using GNU awk (gawk), set the IGNORECASE builtin variable to 1.

Code:
$ gawk 'BEGIN{print "ab" ~ /aB/}'
0
$ gawk 'BEGIN{IGNORECASE=1; print "ab" ~ /aB/}'
1

# 11  
Old 09-03-2009
no, you can not do it like this - there's no 'eval' in awk.
Code:
#!/bin/ksh

KEY="space separated string from web application"

nawk -v k="${KEY}" '
  BEGIN {n=split(k,kA)}
    { for(i=1;i<=n;i++) if (tolower($0) !~ tolower(kA[i])) next;print}' myFile.txt

# 12  
Old 09-03-2009
Thanks vgersh.

Its working..SmilieSmilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Using awk to search case insensitive

Hello , Using the below scrip to search a string in a file , by case-insensitively Please assist on using the toupper() as getting error !. #!/usr/bin/ksh set -x curr_dir=`pwd` file_ctr=0 printf "\n Reviewing the output file from the directory: %s \n\n" $curr_dir ls -latr ... (4 Replies)
Discussion started by: Siva SQL
4 Replies

2. Shell Programming and Scripting

Case insensitive file name search and replace

I am trying to find case insensitive file names and then replace that particular file with other name. if then ls | grep -i "update" | xargs -I {} mv {} LineItems.csv echo "File moved from *update*" elif then ls | grep -i "priority" | xargs -I {} mv {} ... (1 Reply)
Discussion started by: ATWC
1 Replies

3. UNIX for Dummies Questions & Answers

Command for a case insensitive search

Hi All, What is the command to search a file for a case-insensitive match 1.grep -nc text filename 2.grep -i text filename 3.grep -i filename text 4.grep -nc filename text 5.grep -c text filename Thanks for your help (1 Reply)
Discussion started by: bobby1015
1 Replies

4. Shell Programming and Scripting

Making case insensitive in awk

here is a statement awk '/CREATE PROCEDURE/,/elimiter/' "$file1" > onlyproc1.sql which mean cut from create procedure to Delimiter or delimiter and paste it in onlyproc1.sql... my query is how to make this case insensitive.. that is i want the above code to work whther it is Delimiter or... (26 Replies)
Discussion started by: vivek d r
26 Replies

5. UNIX for Dummies Questions & Answers

Using FIND with case insensitive search

I am using HP-Unix B.11.31. Question: How to do the case insensitive search using FIND? Example: I would like list the files with extension of *.SQL & *.sql. When I try with command find . -type f -name *.sql, it does not lists file with *.SQL. (5 Replies)
Discussion started by: Siva SQL
5 Replies

6. UNIX for Dummies Questions & Answers

Using sed for case insensitive search

Hi, I have a file named "test_file" that has the below content. It has words in upper/lower cases PRODOPS prodOPS ProdOps PRODops escalate Shell My requirement is to replace all the "prodops" (what ever case it may be) with "productionoperations". I tried using the "i" option with... (7 Replies)
Discussion started by: sbhuvana20
7 Replies

7. AIX

Case insensitive search in AIX man ?

Hello, Linux man command search is case insensitive by default, but not AIX man. How do I serch case insensitive while using AIX manual pages ? thanks Vilius (7 Replies)
Discussion started by: vilius
7 Replies

8. UNIX for Dummies Questions & Answers

more command case insensitive search ?

Hello, How do I set case insensitive search mode while the file is open with more command ? (I know -i option which could be used before opening) thanks Vilius (2 Replies)
Discussion started by: vilius
2 Replies

9. Shell Programming and Scripting

Case Insensitive search

Hey , i am trying to do a search for the certain books , and im trying to make it case insensitive. what i have come up with so far is this : Database.txt RETARDED MONKEY:RACHEAL ABRAHAML:30:30:20 GOLD:FATIN:23.20:12:3 STUPID:JERLYN:20:40:3 echo -n "Title: " read Title echo -n... (3 Replies)
Discussion started by: gregarion
3 Replies

10. Shell Programming and Scripting

awk case-insensitive

can I tell awk to be case insensitive for one operation without setting the ignorecase value ? thanks, Steffen (7 Replies)
Discussion started by: forever_49ers
7 Replies
Login or Register to Ask a Question