Sponsored Content
Top Forums Shell Programming and Scripting Script for getting the file merged Post 302911386 by Mannu2525 on Thursday 31st of July 2014 12:23:02 PM
Old 07-31-2014
Wrench Script for getting the file merged

Hi,

I have two files separated by bars at each line

File 1 :
Code:
A|4356|13456|23456
A|4356|2986|98732
A|8765|218|1432567

File 2:
Code:
B|12|13456|1234567
B|11|13456|123456789
B|33|2986|98732
B|11|2986|14578965
B|8765|218|147584

Common field is third field like 13456, 2986 and 218 in both the files

Desired output after merge:
Code:
A|4356|13456|23456
B|12|13456|1234567
B|11|13456|123456789
A|4356|2986|98732
B|33|2986|98732
B|11|2986|14578965
A|8765|218|1432567
B|8765|218|147584

I wrote a code but Its not giving me the desired result.

Code:
rm /dir/new_file.txt
touch /dir/new_file.txt

for i in $(cat /dir/file1.txt);
do

 echo $i >> /dir/new_file.txt

 k=`echo $i |awk -F '|' '{print $3}'`
 for j in $(cat /dir/file2.txt);
 do
 w=`echo $j | awk -F '|' '{print "$3"}'`
 
 if [ "$w" == "$k" ]
 then
 echo $j >> /dir/new_file.txt
 fi
 
 done
done

Script is throwing error at red line, also I am not sure it give me the desired result or not.
Code:
testing_script_for_file.ksh[10]: 13456:  not found.

Please help me in this. Thanks in advance.


Moderator's Comments:
Mod Comment Please use CODE tags

Last edited by rbatte1; 07-31-2014 at 01:29 PM.. Reason: Added CODE tage
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

NFS server problems [merged]

I have a machine A NFS mounted on machine B I am doing a build from machine B on the MFS mounted dir of machine A but I keep getting the following: NFS server A not responding still trying. I go to machine A and can log onto machine A and everything seems fine. How do I go about finding... (6 Replies)
Discussion started by: brv
6 Replies

2. Shell Programming and Scripting

Sending output to a file - Merged from duplicate thread

Hi All, read dif echo `date +%Y%m%d`|./add $dif|./fmtdt %mon%dd The above script is for adding days to current date to find the new date. This script divides the current date into 20060220(YYYYMMDD) format and pass this output to add script. The add script will add the days to the... (2 Replies)
Discussion started by: muthu_nix
2 Replies

3. UNIX for Dummies Questions & Answers

merged 10 files with column extraction into one

Hi, I have 600 text files. In each txt file, I have 3 columns, e.g: File 1 a 0.21 0.003 b 0.34 0.004 c 0.72 0.002 File 2 a 0.25 0.0083 b 0.38 0.0047 c 0.79 0.00234 File 3 a 0.45 0.0063 b 0.88 0.0027 c 0.29 0.00204 ... my filename as "sc2408_0_5278.txt sc2408_0_5279.txt... (2 Replies)
Discussion started by: libenhelen
2 Replies

4. Shell Programming and Scripting

arrange merged data using sed

hi, i used paste file1.txt file2.txt > file3.txt to merge 2 columns from file1 and 4 columns from file2. file1 scaffold_217 scaffold_217 file2 CHRSM N scaffold_217.pf scaffold_217.fsa the result is as follows:- scaffold_217 scaffold_217 CHRSM ... (6 Replies)
Discussion started by: redse171
6 Replies

5. Shell Programming and Scripting

Print merged rows from two files by applying if condition

Hi all, I have list of two kind of files and I want to compare the rows and print the merged data by applying if condition. First kind of file looks like: and second kind of file looks like : I want to print the rows present in second file followed by 3 more columns from first... (6 Replies)
Discussion started by: CAch
6 Replies

6. Shell Programming and Scripting

Restricting the merged file size to 1 GB

I am working on a problem in which I need to merge 4 files (say f1,f2,f3 & f4 log files) & then prepare a final file. 1) If the final file created has size more than 1 GB then need to throw error (display error). 2) Need to check after every merge (say f1 + f2, f1 + f2 + f3) that whether... (2 Replies)
Discussion started by: nrm
2 Replies

7. UNIX for Advanced & Expert Users

Sequence number merged with hypen, shell script

Hello Folks, i have to write shell scripting for given expected output manner. in given input we have to write shell script in such a way that sequence no can b merged/link between start and end digit with hyphen "-" symbol and rest of digit separated by "," Eg : For Input "2 6 7 8 11 12... (9 Replies)
Discussion started by: panchalh
9 Replies

8. Linux

Dealing with a really high amount of reads merged

I'm trying to performance tune the I/O of my web server, which is at 41.1% reads merged (If my math is correct), which seems a tad high to just be going along with the defaults. Will modifying read_ahead_kb affect the value of "reads merged" in diskstats? If not, what's a good way of tracking... (2 Replies)
Discussion started by: thmnetwork
2 Replies

9. Shell Programming and Scripting

Multiple lines merged into one required

i have a file in the format acti_id|signature 1|abc def xyz 2|lmn pqr lmn 3|ggg ppp mmm it is in csv format i want the file in the format act_id|signature 1|abcdefxyz 2|lmnpqrlmn 3|gggpppmmm i have tried awk but without much success. i replaced the new line with null but it... (10 Replies)
Discussion started by: djrulz123
10 Replies

10. 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
All times are GMT -4. The time now is 07:13 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy