Sponsored Content
Top Forums Shell Programming and Scripting How to Merge / combine / join / paste 2 text files side-by-side Post 302311023 by cajunfries on Monday 27th of April 2009 03:45:46 PM
Old 04-27-2009
How to Merge / combine / join / paste 2 text files side-by-side

I have 2 text files, both have one simple, single column. The 2 files might be the same length, or might not, and if not, it's unknown which one would be longer.

For this example, file1 is longer:

---file1
Joe
Bob
Mary
Sally
Fred
Elmer
David

---file2
Tomato
House
Car
Elephant

All I want is to paste them side-by side into a new file like so:
No logic, no matching - just a simple paste, with a simple tab formatting to separate the 2 columns.

---file3
Joe Tomato
Bob House
Mary Car
Sally Elephant
Fred
Elmer
David

I've tried the "paste" command, like "paste file1 file2 > file3" but it works works only if file1 is longer than or the same length as file2. If file2 is longer, the extra values are misaligned too far over to the left and appear to belong to file1 as follows:

---file3
Tomato Joe
House Bob
Car Mary
Elephant Sally
Fred
Elmer
David

Also tried this awk I found in the forums, but it works only if file1 is longer or same length as file2 - it truncates file2 if file1 is shorter.
Code:
awk 'NR==FNR{_[NR]=$0;next}{print $1,$2,_[FNR]}' file2 file1

---file3
Tomato Joe
House Bob
Car Mary
Elephant Sally

I don't care if the solution is awk, sed, shell script, or what.
Reading both files into an array might be the solution, but I don't know enough on how to write the code for that.

Any help is greatly appreciated, thanks!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to Merge Two .xls files side by side into a single .xls

Hi all, please help me out in below requirement. I have two .xls files say abc.xls and bbc.xls , i want to merge these two files into a single file ..say xyz.xls side by side Ex: abc.xls Eno Ename 101 hello 102 hero 103 india bbc.xls Eno Ename 201 delhi 202 Hyd 203... (0 Replies)
Discussion started by: jagadish99
0 Replies

2. Shell Programming and Scripting

How to Merge Two .xls files side by side into a single .xls

Hi all, please help me out in below requirement. I have two .xls files say abc.xls and bbc.xls , i want to merge these two files into a single file ..say xyz.xls side by side Ex: abc.xls bbc.xls Eno Ename Eno Ename 101 hello ... (2 Replies)
Discussion started by: jagadish99
2 Replies

3. Shell Programming and Scripting

Merge 2 text files to one text file side by side

Inquiring minds want to know.... I need to take two files that I have latitude and longitude values and then combine them into one file with the values side by side separated by a space. the first file is temp113-lat.txt and the second is temp113-lon.txt. They each have values listed in the... (15 Replies)
Discussion started by: ahinkebein
15 Replies

4. Shell Programming and Scripting

Merge 3 columns side by side

I know this is a stupid question for you guys! half day googling and i got nothing :( i have 3 variables/files, say: $X1 or file1: # there is one whitespace space after each line | 21 | 9 | 28 | 100 | 51 $X2 or file2: # there is one whitespace space... (7 Replies)
Discussion started by: amaulana
7 Replies

5. Shell Programming and Scripting

Script to place selected columns from a group of files side by side in a new file

Hi Everyone, I need a shell/perl script to bring selected columns from all the files located in a directory and place them in a new file side by side. File1: a b c d 2 3 4 5 f g h i .......... File2: I II III IV w x y z .............. and so on many files are there...... (8 Replies)
Discussion started by: ks_reddy
8 Replies

6. Shell Programming and Scripting

Paste two file side by side together based on specific pattern match problem

Input file_1: P78811 P40108 O17861 Q6NTW1 P40986 Q6PBK1 P38264 Q6PBK1 Q9CZ49 Q1GZI0 Input file_2: (6 Replies)
Discussion started by: patrick87
6 Replies

7. Shell Programming and Scripting

printing 3 files side by side based on similar values in rows

Hi I'm trying to compare 3 or more files based on similar values and outputting them into 3 columns. For example: file1 ABC DEF GHI file2 DEF DER file3 ABC DER The output should come out like this file1 file2 file3 ABC ABC (4 Replies)
Discussion started by: zerofire123
4 Replies

8. Shell Programming and Scripting

AWK to merge multiple files side by side

I have about 100s of files of type text in a known directory. I want to merge all files side by side. Number of lines in all the files will remain same. For example file1 contains cat dog File 2 contains rat mat Output file should be cat rat dog mat Using awk I was able to... (5 Replies)
Discussion started by: kanthrajgowda
5 Replies

9. UNIX for Dummies Questions & Answers

Paste many files together side by side

Hi, Thank you for your help in advance :D. I have thousands of files like... file01 file02 file03 . . . file6324 I would like to paste every other file side by side so it looks like file01 file02 file03 file04 ...e.t.c file6323 file6324 (3 Replies)
Discussion started by: shaz1990
3 Replies

10. Shell Programming and Scripting

Merging two text files side by side

Hi everyone, I need to merge two files side by side The files look something like this: HOSTNAME fishtornado-K52F 127.0.1.1 UPTIME 20:17:01 up 2:19, 3 users, load average: 0.00, 0.04, 0.05 DISK USAGE (Size/Used/Avail/Use%) 29G 6.5G 21G 25% RUN QUEUE PID COMMAND USER ... (4 Replies)
Discussion started by: FishTornado
4 Replies
MERGE(1)						      General Commands Manual							  MERGE(1)

NAME
merge - three-way file merge SYNOPSIS
merge [ options ] file1 file2 file3 DESCRIPTION
merge incorporates all changes that lead from file2 to file3 into file1. The result ordinarily goes into file1. merge is useful for com- bining separate changes to an original. Suppose file2 is the original, and both file1 and file3 are modifications of file2. Then merge combines both changes. A conflict occurs if both file1 and file3 have changes in a common segment of lines. If a conflict is found, merge normally outputs a warning and brackets the conflict with <<<<<<< and >>>>>>> lines. A typical conflict will look like this: <<<<<<< file A lines in file A ======= lines in file B >>>>>>> file B If there are conflicts, the user should edit the result and delete one of the alternatives. OPTIONS
-A Output conflicts using the -A style of diff3(1), if supported by diff3. This merges all changes leading from file2 to file3 into file1, and generates the most verbose output. -E, -e These options specify conflict styles that generate less information than -A. See diff3(1) for details. The default is -E. With -e, merge does not warn about conflicts. -L label This option may be given up to three times, and specifies labels to be used in place of the corresponding file names in conflict reports. That is, merge -L x -L y -L z a b c generates output that looks like it came from files x, y and z instead of from files a, b and c. -p Send results to standard output instead of overwriting file1. -q Quiet; do not warn about conflicts. -V Print 's version number. DIAGNOSTICS
Exit status is 0 for no conflicts, 1 for some conflicts, 2 for trouble. IDENTIFICATION
Author: Walter F. Tichy. Manual Page Revision: 1.1; Release Date: 1999/04/23. Copyright (C) 1982, 1988, 1989 Walter F. Tichy. Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995 Paul Eggert. SEE ALSO
diff3(1), diff(1), rcsmerge(1), co(1). BUGS
It normally does not make sense to merge binary files as if they were text, but merge tries to do it anyway. GNU
1999/04/23 MERGE(1)
All times are GMT -4. The time now is 11:10 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy