Sponsored Content
Top Forums Shell Programming and Scripting Script to process file from a directory and grep the required content and print Post 302768165 by Optimus81 on Friday 8th of February 2013 05:22:47 AM
Old 02-08-2013
Hi Bipinajith,

I did tried you solution but still not able to get the colors on the string Passed/Failed.

It still shows the string in white color, that means assigning variable s is not working.
I did tried something with printf stmt even that didn't work.

Code:
 for file in *_Daily_Check*
do
        server=${file%%_*}
        if [ -f "$file" ]
        then
                nawk -F":" -v S="$server" '/VerifyInterface/ {
                       #printf "\033[1;36m|%s\033[0m%20s", S, $1;if (s == "Passed"){$1 = "\033[1;32m" s "\033[0m"
                       if($1=="Passed") s="\033[1;32m $1 \033[0m";
                       if($1=="Failed") s="\033[1;31m $1 \033[0m";
        
        #if($1=="Passed") printf "\033[1;32m|%s\033[0m%20s",s,$1;
                       #if($1=="Failed") printf "\033[1;31m|%s\033[0m%20s",s,$1;
        
                       printf "\033[1;36m|%s\033[0m%20s", S, $1;
                } /CoreFileGenerated/ {
                        #printf "\033[1;32m%15s\033[0m", $1;
                        if(s=="Passed"){ $1="\033[1;32m" s "\033[0m";}
                        if(s=="Failed"){ $1="\033[1;31m" s  "\033[0m";}
                        printf "%15s",$1;
      
                       #if($1=="Passed") printf "\033[1;32m|%s\033[0m%20s",s,$1;
                       #if($1=="Failed") printf "\033[1;31m|%s\033[0m%20s",s,$1;
        
                } /VerifyRegister/ {
                        #printf "\033[1;32m%15s\033[0m", $1;
                        if($1=="Passed") s="\033[1;32m" $1 "\033[0m";
                        if($1=="Failed") s="\033[1;31m" $1 "\033[0m";
                        printf "%15s", $1;
                } /VerifyComponent/ {
                        #printf "\033[1;32m%15s\033[0m", $1;
                        if($1=="Passed") s="\033[1;32m" $1 "\033[0m";
                        if($1=="Failed") s="\033[1;31m" $1 "\033[0m";
                        printf "%15s", $1;
                } /VerifyServiceAvailability/ {
                        #printf "\033[1;32m%15s\033[0m     |\n", $1;
                        if($1=="Passed") s="\033[1;32m" $1 "\033[0m";
                        if($1=="Failed") s="\033[1;31m" $1 "\033[0m";
                        printf "%15s     |\n", $1;
                } ' "$file"
           echo "|--------------------------------------------------------------------------------------------------------|"
        fi
done

@RudiC,
Thanks for your solution. It more like making script generic, which is very good. but when i tried to execute
you script, i get the below error which i was not able to resolve :
Error:
Code:
root@bbt # ./output.sh
nawk: can't open file header
 source line number 11

 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

shell script to search content of file with timestamps in the directory

hello, i want to make a script to search the file contents in my home directory by a given date and output me the line that has the date... (10 Replies)
Discussion started by: psychobeauty
10 Replies

2. UNIX for Dummies Questions & Answers

Print the content of a directory in jpg file

Is there any possible way to print the contents of a directory to a .jpg file? I have a list of thumbnails (e-books) which I want to share (+500) but I don't know how to make this. I would appreciate a lot any comments regarding this issue. (4 Replies)
Discussion started by: agasamapetilon
4 Replies

3. Shell Programming and Scripting

Goto each directory and subdirectories and grep the required pattern

Hi All, I need your help in finding pattern from files present in different directories. I need to search for a pattern "xyz" from "*.txt" files which are present in different levels of directories as shown. example ------- dir1/subdir1/file.txt dir2/subdir2/subsubdir2/file.txt... (5 Replies)
Discussion started by: imas
5 Replies

4. Shell Programming and Scripting

Shell script to monitor new file in a directory and mail the file content

Hi I am looking for a help in designing a bash script on linux which can do below:- 1) Look in a specific directory for any new files 2) Mail the content of the new file Appreciate any help Regards Neha (5 Replies)
Discussion started by: neha0785
5 Replies

5. Shell Programming and Scripting

Bash script to read a file from particular line till required line and process

Hi All, Am trying to write wrapper shell/bash script on a utility tool for which i need to pass 2 files as arugment to execute utility tool. Wraper script am trying is to do with above metion 2 files. utility tool accepts : a. userinfo file : which contains username b. item file : which... (2 Replies)
Discussion started by: Optimus81
2 Replies

6. Shell Programming and Scripting

How to Modify a file content in UNIX and sort for only required fields ?

I have the below contents in a file after making the below curl call curl ... | grep -E "state|Rno" | paste -sd',\n' | grep "Disconnected" > test "state" : "Disconnected",, "Rno" : "5554f1d2" "state" : "Disconnected",, "Rno" : "10587563" "state" : "Disconnected",, "Rno" :... (2 Replies)
Discussion started by: Vaibhav H
2 Replies

7. Shell Programming and Scripting

Help required to Print Single quote into a file

Hi, I need help in printing string enclosed with single quotes to a file. I am trying to write a shell script which when run will create another script below is the script logic. cat create_script.sh echo '#!/bin/sh' > append_flname.sh echo 'for FILE in $*' >> append_flname.sh echo... (6 Replies)
Discussion started by: imrandec85
6 Replies

8. Shell Programming and Scripting

Script to search every file in a directory and print last few lines

Hi everyone, I need to write a script to search a directory, output the name of a file to an ouput file and print the last few lines of the files to the output file such that I would have something like this: FILE1: LINE LINE LINE FILE2: LINE LINE LINE FILE3: LINE LINE LINE... (2 Replies)
Discussion started by: mojoman
2 Replies

9. Shell Programming and Scripting

Directory containing files,Print names of the files in the directory that are exactly same content.

Given a directory containing say a few thousand files, please output a list of all the names of the files in the directory that are exactly the same, i.e. have the same contents. func(a_directory_name) output -> {“matches”: , ... ]} e.g. func(“/home/my/files”) where the directory... (7 Replies)
Discussion started by: anuragpgtgerman
7 Replies
Test::Inline::Content::Legacy(3pm)			User Contributed Perl Documentation			Test::Inline::Content::Legacy(3pm)

NAME
Test::Inline::Content::Legacy - Test::Inline 2 Content Handler for legacy functions SYNOPSIS
Custom script content generation using Test::Inline 2.000+ with a custom generator functions my $header = "...."; my $function = sub { my $Object = shift; my $Script = shift; return $header . $Script->merged_content; }; my $Inline = Test::Inline->new( ... file_content => $function, ); Migrating this same code to Test::Inline 2.100+ ContentHandler objects my $header = "...."; my $function = sub { my $Object = shift; my $Script = shift; return $header . $Script->merged_content; }; my $ContentHandler = Test::Inline::Content::Legacy->new( $function ); my $Inline = Test::Inline->new( ... ContentHandler => $ContentHandler, ); DESCRIPTION
This class exists to provide a migration path for anyone using the custom script generators in Test::Inline via the "file_content" param. The synopsis above pretty much says all you need to know. METHODS
new $CODE_ref The "new" constructor for "Test::Inline::Content::Legacy" takes a single parameter of a "CODE" reference, as you would have previously provided directly to "file_content". Returns a new "Test::Inline::Content::Legacy" object, or "undef" if not passed a "CODE" reference. coderef The "coderef" accessor returns the "CODE" reference for the object process $Inline $Script The "process" method works with the legacy function by passing the Test::Inline and Test::Inline::Script arguments straight through to the legacy function, and returning it's result as the return value. SUPPORT
See the main SUPPORT section. AUTHOR
Adam Kennedy <adamk@cpan.org>, <http://ali.as/> COPYRIGHT
Copyright 2004 - 2010 Adam Kennedy. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. perl v5.12.4 2010-11-22 Test::Inline::Content::Legacy(3pm)
All times are GMT -4. The time now is 05:21 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy