Find Output Formatting


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Find Output Formatting
# 1  
Old 07-06-2010
Find Output Formatting

Greetings,
I need to find few patterns related to password (pwsd, pwd, password etc) in a directory includig sub -directories.
I need to redirect the output of find (in combination with grep) to a file which will be later used to verify the files.
OS is Sun Solaris 5.10.
The out put file format needs tp be as below-
/************************************************************************/
-------------------------------------------------------------------------
File name = <Absolute Path of the file >
Pattern Matching Line Number =<Line number>
Pattern matching Line =<Line>
-------------------------------------------------------------------------
File name = <Absolute Path of the file >
Pattern Matching Line Number =<Line number>
Pattern matching Line =<Line>
-------------------------------------------------------------------------
/************************************************************************/
I am using below command . However I am not sure how do i format the output. Appreciate your expert advice/suggestions.
Code-

Code:
#!/bin/ksh
find_matches()
{
DIR=$1;
FILE=$2;
find ${DIR}/. \( -name "*proper*" -o -name "*.txt" -o -name "*.csv" \) -n -exec grep -i pwd {} \; -print >> ${FILE}
find ${DIR}/. \( -name "*proper*" -o -name "*.txt" -o -name "*.csv" \) -n -exec grep -i password {} \; -print >> ${FILE}
find ${DIR}/. \( -name "*proper*" -o -name "*.txt" -o -name "*.csv" \) -n -exec grep -i pswd {} \; -print >> ${FILE}
}
find_matches ${DIR1} ${tmp_file}
find_matches ${DIR2} ${tmp_file}

# 2  
Old 07-06-2010
Could you explain what is the use of "-n" switch in this find command? I tried looking it up in man page, but couldn't find anything. This code should do what you want:
Code:
find ${DIR}/. \( -name "*proper*" -o -name "*.txt" -o -name "*.csv" \) -n -exec grep -ni pwd {} \; \
-print | awk -F: '{n=$1;p=$2;getline;print "----\nFile Name = "$0"\nPattern Matching Line Number \
= "n"\nPattern matching Line = "p}END{print "----"}' >> ${FILE}

You just need to adjust number of "-" in those line separators.
This User Gave Thanks to bartus11 For This Post:
# 3  
Old 07-06-2010
Code:
# find . \( -name "*proper*" -o -name "*.txt" -o -name "*.csv" \) -exec  grep -n pwd {} /dev/null \; >> outputn ; 
 sed 's/\(.*\):\(.*\):\(.*\)/ \File name = < \1 > \
 Pattern Matching Line Number = < \2 > \
 Pattern matching Line = < \3 > \
 ------------------------------------------- \ /' outputn
 
 File name = < ./12.txt >
 Pattern Matching Line Number = < 1 >
 Pattern matching Line = < sdafsadfasfFpwd  >
 -------------------------------------------
 File name = < ./12.txt >
 Pattern Matching Line Number = < 2 >
 Pattern matching Line = < owddpwdfafafa >
 -------------------------------------------

This User Gave Thanks to ygemici For This Post:
# 4  
Old 07-06-2010
Thanks a lot for the replies. It worked like a charm.
Regarding -n, its my fault. I should have written as grep argument not find.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. AIX

Help Formatting Output

I am using FORTRAN 90 on AIX 5.3 and need to output my data to a tab-delimited file. It must have actual tabs, and I cannot figure out a way to make it work. The resulting file will be imported into another application (quickbooks) as an .iif file....for some reason, it needs the tabs; spaces do... (2 Replies)
Discussion started by: KathyB148
2 Replies

2. Shell Programming and Scripting

Formatting output

Hi, I have a file like this -------------------------- 1 aaa xxx 55 -------------------------- 1 aaa www 32 -------------------------- 2 bbb yyy 11 -------------------------- 2 bbb zzz 34 ------------------------- 2 bbb ttt ... (3 Replies)
Discussion started by: tdev457
3 Replies

3. Shell Programming and Scripting

Output Formatting

Hi Guys I need help removing some lines from output i am receiving from a shell script. Here is the output: http://i52.tinypic.com/10z0fut.png I am trying to remove the output that i have circled. . ${EDW}/extracts/bin/extracts_setup2.sh . ${EDW}/extracts/extracts.conf ... (7 Replies)
Discussion started by: mooey1232003
7 Replies

4. Shell Programming and Scripting

Output formatting .

below is a CPU utilization Log for ABC server. However for every 15 minutes it generates 3 CPU values(with interval of 2 sec). Host CPU CPUtotal CPU% time ABC 101.1 2 50.55 14 : 15 ABC 100.5 2 50.25 14 : 15 ABC 100.2 2 50.1 14 : 15 ABC 100.9 2 50.45 14 : 30 ABC 100.5 2 50.25 14 : 30 ABC... (5 Replies)
Discussion started by: pinga123
5 Replies

5. Shell Programming and Scripting

Output formatting

I have input file in this way John 1234 BASIC 26000 John 1234 ALLOWC 01550 John 1234 INCER 01700 John 1234 REL 20000 Debi 2345 BASIC 29000 Debi 2345 ALLOWC 01600 Debi 2345 INCR 01900 Debi 2345 REL ... (8 Replies)
Discussion started by: vakharia Mahesh
8 Replies

6. Shell Programming and Scripting

Formatting ls output

I am using find and ls to search for "warez" files on my server. find /home/ -regex ".*\.\(avi\|mp3\|mpeg\|mpg\|iso\)" -print0 | xargs -0 ls -oh This command produces this: -rw-r--r-- 1 1000 3.2M Feb 18 2009 /home/user/public_html/lupus.mp3 I want to only get this 3.2M... (4 Replies)
Discussion started by: bonrad
4 Replies

7. Shell Programming and Scripting

more help with formatting ls output...

Ok, for a fun project, my goal is to replicate the style of "catalog" on an old apple ] *A 002 SOMEAPPLESOFTFILE B 004 SOMEFILE T 006 SOMETEXT I 002 SOMEINTEGERFILE The first character is either " " or "*" depending on if the file is locked or not. Next is the filetype, so in... (1 Reply)
Discussion started by: patrick99e99
1 Replies

8. Shell Programming and Scripting

Formatting Output

Hi I tried running the below awk 'BEGIN { printf ("%s %-51s %s %-7s %s",$var1,$var2,$var3,$var4,$var5)}' from the command prompt and it is not working. Getting the error awk: Field $() is not correct. The source line number is 1. Actually my requirement is to form a string based on... (6 Replies)
Discussion started by: dhanamurthy
6 Replies

9. Shell Programming and Scripting

formatting output

Hi need some advice.. #grep -i hostname test.csv (gives the below output) HOSTNAME,name,host_test,,,,,,,, Now I need to format the above output as below. HOSTNAME: name=host_test Any easy way of doing this using awk or sed or printf? (4 Replies)
Discussion started by: balaji_prk
4 Replies

10. Shell Programming and Scripting

Formatting the output

Hi all, Have the following code(1) producing the results(2 & 3). Would like to know if there is a way to format the two reports created in a similar fashion. IE - The first is formatted nicely as a result of the echo "$xmpbdate $xavgs" >> $xmpbrpt However when I attempt to do the same on... (7 Replies)
Discussion started by: Cameron
7 Replies
Login or Register to Ask a Question