Sponsored Content
Top Forums Shell Programming and Scripting Conditional grep command to search entire file Post 302697495 by Corona688 on Thursday 6th of September 2012 11:29:19 PM
Old 09-07-2012
awk is a language which loops over all lines by default.

So, for every single line, it runs both code blocks.

Code:
awk '# NR is the total line number.
# FNR is the line number in the file.
# When they are the same, it must be in the right file.
#
# $5 is the 5th field.  When it does not contain none,
# it is considered to be a valid line, and the 12th column
# and 5th column get saved for later in the array A.
# Then it skips to the next line without executing the block below.
NR==FNR && !($5 ~ /none/) {
        A[$12]=$5 # Save ID and key for later
        next # Skip to next line
}

# When the 5th column contains none, try to look
# it up in A.  If found, set the 5th column to its contents.
# The 1 at the end of the line tells it to print every line.
($5 ~ /none/) && ($12 in A) { $5=A[$12] } 1' logfile logfile

We give awk logfile twice, so it reads the same file twice. The first time it saves names for lookup. The second time, it tries to look up entries and substitute the data you wanted before printing every line.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

search in a directory using grep command

Hi, I want to search files/directories in /temp directory which starts with letter 'a'. How can I do that using grep command. I can find out like ls -ltr a* but I want to use grep command like ls -ltr | grep ..... like that. Please help. Malay (4 Replies)
Discussion started by: malaymaru
4 Replies

2. UNIX for Dummies Questions & Answers

Search / Find / grep command ...

Is there any command, so I can retrieve all the records in a file from the first occurance of a search string, within that file? (4 Replies)
Discussion started by: videsh77
4 Replies

3. Shell Programming and Scripting

Awk+Grep Input file needs to match a column and print the entire line

I'm having problems since few days ago, and i'm not able to make it works with a simple awk+grep script (or other way to do this). For example, i have a input file1.txt: cat inputfile1.txt 218299910417 1172051195 1172070231 1172073514 1183135117 1183135118 1183135119 1281440202 ... (3 Replies)
Discussion started by: poliver
3 Replies

4. UNIX for Dummies Questions & Answers

grep question: stop search from finding entire line

Sorry for the title, I really don't know how to word this question or what to even search for. I tried "grep one match", "grep 1 match", "stop grep" on both google and here and haven't found something that helps, so here I go: I have a file that's about 1.5 million lines long, every line looks... (3 Replies)
Discussion started by: rmoakler
3 Replies

5. UNIX for Advanced & Expert Users

Advance conditional grep command

Hi guys, I need your help to use advance grep command, In my example below, I have 5 container which has some information on it, and I need to grep specific word "PLMNCode=454F00" which will not only grep the line contains that word, but I need to print the output for the whole container. Input... (6 Replies)
Discussion started by: hapalon
6 Replies

6. UNIX for Advanced & Expert Users

search the entire man pages

Could someone please tell me how to search the entire man pages? I know man -k whatever searched the description but I wanna search the entire man page. (8 Replies)
Discussion started by: cokedude
8 Replies

7. Shell Programming and Scripting

Pattern search using grep command !

Hi, I am trying to do pattern search using grep command. But i donot know what mistake i'm doing. I am not getting the expected Result. could any one please help me out? $ cat b.ksh AasdjfhB 57834B 86234B 472346B I want to print the line which is starting with either A or 8 and... (10 Replies)
Discussion started by: nikesh29
10 Replies

8. UNIX for Dummies Questions & Answers

Bashrc File - Conditional Command Execution?

Hello All, I was wondering if there is a way to execute a command in my ".bashrc" file based on how I logged into the PC? I was thinking maybe there is a way to check how the user (*myself) logged in, maybe somehow with the who command along with something else, but I'm not sure... I know I... (7 Replies)
Discussion started by: mrm5102
7 Replies

9. Shell Programming and Scripting

Search file pattern using grep command

I 'm writing a script to search particular strings from log files. The log file contains lines start with *. The file may contain many other lines start with *. I need to search a particular line from my log file. The grep command is working in command line , but when i run my script, Its printing... (7 Replies)
Discussion started by: vinus
7 Replies

10. UNIX for Beginners Questions & Answers

Search a string and display its location on the entire string and make a text file

I want to search a small string in a large string and find the locations of the string. For this I used grep "string" -ob <file name where the large string is stored>. Now this gives me the locations of that string. Now how do I store these locations in a text file. Please use CODE tags as... (7 Replies)
Discussion started by: ANKIT ROY
7 Replies
SVK::Command::Log(3)					User Contributed Perl Documentation				      SVK::Command::Log(3)

NAME
SVK::Command::Log - Show log messages for revisions SYNOPSIS
log DEPOTPATH log PATH log -r N[:M] [DEPOT]PATH OPTIONS
-r [--revision] ARG : ARG (some commands also take ARG1:ARG2 range) A revision argument can be one of: "HEAD" latest in repository {DATE} revision at start of the date NUMBER revision number NUMBER@ interpret as remote revision number NUM1:NUM2 revision range Unlike other commands, negative NUMBER has no meaning. -l [--limit] REV : stop after displaying REV revisions -q [--quiet] : Don't display the actual log message itself -x [--cross] : track revisions copied from elsewhere -v [--verbose] : print extra information --xml : display the log messages in XML format --filter FILTER : select revisions based on FILTER --output FILTER : display logs using the given FILTER DESCRIPTION
Display the log messages and other meta-data associated with revisions. SVK provides a flexible system allowing log messages and other revision properties to be displayed and processed in many ways. This flexibility comes through the use of "log filters." Log filters are of two types: selection and output. Selection filters determine which revisions are included in the output, while output filters determine how the information about those revisions is displayed. Here's a simple example. These two invocations produce equivalent output: svk log -l 5 //local/project svk log --filter "head 5" --output std //local/project The "head" filter chooses only the first revisions that it encounters, in this case, the first 5 revisions. The "std" filter displays the revisions using SVK's default output format. Selection filters can be connected together into pipelines. For example, to see the first 3 revisions with log messages containing the string 'needle', we might do this svk log --filter "grep needle | head 3" //local/project That example introduced the "grep" filter. The argument for the grep filter is a valid Perl pattern (with any '|' characters as '|' and '' as '\'). A revision is allowed to continue to the next stage of the pipeline if the revision's log message matches the pattern. If we wanted to search only the first 10 revisions for 'needle' we could use either of the following commands svk log --filter "head 10 | grep needle" //local/project svk log -l 10 --filter "grep needle" //local/project You may change SVK's default output filter by setting the SVKLOGOUTPUT environment. See svk help environment for details. Standard Filters The following log filters are included with the standard SVK distribution: Selection : grep, head, author Output : std, xml For detailed documentation about any of these filters, try "perldoc SVK::Log::Filter::Name" where "Name" is "Grep", "Head", "XML", etc.. Other log filters are available from CPAN <http://search.cpan.org> by searching for "SVK::Log::Filter". For details on writing log filters, see the documentation for the SVK::Log::Filter module. perl v5.10.0 2008-08-04 SVK::Command::Log(3)
All times are GMT -4. The time now is 03:58 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy