Shell script (sh file) logic to compare contents of one file with another file and output to file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell script (sh file) logic to compare contents of one file with another file and output to file
# 15  
Old 07-15-2018
What do you mean by code tags I am new to this forum so can you help me out so that next time I don't make the mistake

---------- Post updated at 08:42 AM ---------- Previous update was at 08:30 AM ----------

My file 1 content is as follows

Code:
"BRGTEST-242" a.txt
"BRGTEST-240" a.txt
"BRGTEST-219" b.txt

My file 2 contents is like this

Code:
"BRGTEST-244" a.txt 
"BRGTEST-231" c.txt 
"BRGTEST-231" d.txt
"BRGTEST-221" b.txt

Desired output for file 3 is like this, output must be written to file 3 in the below format

Code:
"BRGTEST-244" is dependent on "BRGTEST-242" for the file a.txt
"BRGTEST-244" is dependent on "BRGTEST-240" for the file a.txt
"BRGTEST-221" is dependent on "BRGTEST-219" for the file b.txt

Dependency logic is as below in simple english terms

Compare if file 1 and file 2 have same contents, if so print the corresponding ids in the desired output format.

I have used code tags now . I got what you are saying . I didnt realise it before as I was extermly tensed to get this output and logic. Kindly help how can this be acheived.
# 16  
Old 07-15-2018
Code tags considerably improve legibility of program snippets or input / output data, and thus, amongst other things, tremendously help understanding logics and identifying errors by just looking.
Their use is shown and explained all over the place, in the forum FAQs, in the little text just above this "Quick reply" editor, and in the reminder videos you received with the infractions.
Highlight the code / data portion of your text and click the "code tag button": Image.

Last edited by RudiC; 07-15-2018 at 01:07 PM..
# 17  
Old 07-15-2018
I have done it above. You want me to post again ?
# 18  
Old 07-15-2018
OK, we obviously cross posted. I appreciate the good intention, thanks.


With your new data, try
Code:
awk '
NR == FNR       {T[$2] = T[$2] $1 " "                                                   # for the first file (when input stream line No. equals file's line No.)
                                                                                        # collect dependencies in an array (T) in which index has the
                                                                                        # match code and element contents has the condition
                 next                                                                   # and proceed to the next input line
                }
$2 in T         {split (T[$2], S)                                                       # if match code in $2 (second field) is found in the T indices, split
                                                                                        # T's element's contents into array S
                 for (s in S) print $1, "is dependent on", S[s], "for the file", $2     # iterate through S and print all the dependencies 
                }
' file[12]                                                                              # the shell will expand this to the input files file1 and file2
"BRGTEST-244" is dependent on "BRGTEST-242" for the file a.txt
"BRGTEST-244" is dependent on "BRGTEST-240" for the file a.txt
"BRGTEST-221" is dependent on "BRGTEST-219" for the file b.txt

# 19  
Old 07-15-2018
Hi RudiC

I appriciate your quick response. I will test the above logic and update you

Thanks again for all your help
# 20  
Old 07-18-2018
Hi RudiC

I am still in the process of testing the logic u sent to me.I will keep you posted once I throughly test all my scenarios
# 21  
Old 07-29-2018
Hi RudiC

Thanks for your reply. You can mark this thread as resolved. Thanks a lot for your timely support
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shell Script to Read the given file contents into a merged one file

Like to have shell script to Read the given file contents into a merged one file with header of path+file name followed by file contents into a single output file. While reading and merging the file contents into a single file, Like to keep the format of the source file. ... (4 Replies)
Discussion started by: Siva SQL
4 Replies

2. UNIX for Beginners Questions & Answers

Output file name and file contents of multiple files to a single file

I am trying to consolidate multiple information files (<hostname>.Linux.nfslist) into one file so that I can import it into Excel. I can get the file contents with cat *Linux.nfslist >> nfslist.txt. I need each line prefaced with the hostname. I am unsure how to do this. --- Post updated at... (5 Replies)
Discussion started by: Kentlee65
5 Replies

3. Shell Programming and Scripting

ksh Script, Reading A File, Grepping A File Contents In Another File

So I'm stumped. First... APOLOGIES... my work is offline in an office that has zero internet connectivity, as required by our client. If need be, I could print out my script attempts and retype them here. But on the off chance... here goes. I have a text file (file_source) of terms, each line... (3 Replies)
Discussion started by: Brusimm
3 Replies

4. Shell Programming and Scripting

Match list of strings in File A and compare with File B, C and write to a output file in CSV format

Hi Friends, I'm a great fan of this forum... it has helped me tone my skills in shell scripting. I have a challenge here, which I'm sure you guys would help me in achieving... File A has a list of job ids and I need to compare this with the File B (*.log) and File C (extend *.log) and copy... (6 Replies)
Discussion started by: asnandhakumar
6 Replies

5. Shell Programming and Scripting

script to grep a pattern from file compare contents with another file and replace

Hi All, Need help on this I have 2 files one file file1 which has several entries as : define service{ hostgroup_name !host1,!host5,!host6,.* service_description check_nrpe } define service{ hostgroup_name !host2,!host4,!host6,.* service_description check_opt } another... (2 Replies)
Discussion started by: namitai
2 Replies

6. UNIX for Advanced & Expert Users

Shell Script to compare xml files and print output to a file

All, PLease can you help me with a shell script which can compare two xml files and print the difference to a output file. I have attached one such file for you reference. <Group> <Member ID=":Year_Quad:41501" childCount="4" fullPath="PEPSICO Year-Quad-Wk : FOLDER.52 Weeks Ending Dec... (2 Replies)
Discussion started by: kanthrajgowda
2 Replies

7. Shell Programming and Scripting

shell script to compare file contents

Hello Has anyone got an example shell script that I can use to compare the contents of two files. The files should contain the same contents, eg. file1.txt apple pear grape file2.txt apple pear grape (2 Replies)
Discussion started by: deedaz
2 Replies

8. UNIX for Dummies Questions & Answers

compare 2 file contents , if same delete 2nd file contents

Give shell script....which takes two file names as input and compares the contents, is both are same delete second file's contents..... I try with "diff"...... but confusion how to use "diff" with if ---else Thanking you (5 Replies)
Discussion started by: krishnampkkm
5 Replies

9. Shell Programming and Scripting

compare file size from a output file from a script

Hi guys, firstly I'm working on SunOS 5.10 Generic_125100-10 sun4u sparc SUNW,Sun-Fire-V240 I've made a script to compress two directory and then send them to an other server via ftp. This is working very well. Inside theis script I decide to log usefull data for troubleshooting in case of... (7 Replies)
Discussion started by: moustik
7 Replies

10. Shell Programming and Scripting

search for the contents in many file and print that file using shell script

hello have a file1 H87I Y788O T347U J23U and file2 J23U U887Y I99U T556U file3 I99O J99T F557J file4 N99I T666U R55Y file5 H87I T347U file6 H77U R556Y E44T file7 Y788O K98U H8I May be using script we can use file1 to search for all the files and have the output H87I file5... (3 Replies)
Discussion started by: cdfd123
3 Replies
Login or Register to Ask a Question