Sponsored Content
Operating Systems Linux [Solved] Combining columns from different files Post 302830145 by TAPE on Monday 8th of July 2013 07:40:03 AM
Old 07-08-2013
[Solved] Combining columns from different files

Hey Guys & Gals,

I am stuck with the following ;

I have 2 text files, each containing 2 columns.

My goal is to have a column from the 2nd file placed inbetween the columns in the first file.
Basically the idea is, each address has a different name (but 1 name per address) but 1 address can have more telephone numbers and I would like to list the tel. numbers per address in the order as mentioned below
(address - telephone - name)




File 1 ;
-------
Quote:
address1 name
address2 name
address3 name
File 2 ;
-------
Quote:
tel1 address1
tel2 address1
tel3 address1
tel1 address2
tel1 address3
My goal is to achieve a list with 3 columns as follows ;
Quote:
address1 tel1 name
address1 tel2 name
address1 tel3 name
address2 tel1 name
address3 tel1 name

Not sure whether I explained it OK, but hope so Smilie

Last edited by Don Cragun; 07-08-2013 at 08:01 PM.. Reason: Update title.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Combining Two fixed width columns to a variable length file

Hi, I have two files. File1: File1 contains two fixed width columns ID of 15 characters length and Name is of 100 characters length. ID Name 1-43<<11 spaces>>Swapna<<94 spaces>> 1-234<<10 spaces>>Mani<<96 spaces>> 1-3456<<9 spaces>>Kapil<<95 spaces>> File2: ... (4 Replies)
Discussion started by: manneni prakash
4 Replies

2. Shell Programming and Scripting

combining columns from different files

Hi all, I would be very grateful for some advice on the following. I have several text files. The files are experiment results with columns of data separated by white space. The files begin with several lines of header which are all preceeded by a comment character '#'. Each file has a... (10 Replies)
Discussion started by: iomaire
10 Replies

3. Shell Programming and Scripting

Combining columns from different files

I have two files I need to combine. The problem I'm having is I need to only combine data from the second file in the empty spaces of the first. For example: file1 Data Field Data Field Data Field Data Field file2 a - Insert Data b - Insert Data c - Insert Data d - Insert Data... (10 Replies)
Discussion started by: handband2
10 Replies

4. UNIX for Dummies Questions & Answers

Combining two text files as columns?

I have one space delimited file with multiple columns and one tab delimited file with multiple columns (They have the same number of rows). I want to basically combine these two text files into a new text file by column. How would I go about doing that? (1 Reply)
Discussion started by: evelibertine
1 Replies

5. Shell Programming and Scripting

Combining columns from multiple files to one file

I'm trying to combine colums from multiple file to a single file but having some issues, appreciate your help. The filenames are the same except for the extension, path1.m0 --------- a b c d e f g h i path1.m1 --------- m n o p q r s t u File names are path1.m The... (3 Replies)
Discussion started by: rkmca
3 Replies

6. Shell Programming and Scripting

Combining columns from multiple files into one single output file

Hi, I have 3 files with one column value as shown File: a.txt ------------ Data_a1 Data_a2 File2: b.txt ------------ Data_b1 Data_b2 Data_b3 Data_b4 File3: c.txt ------------ Data_c1 Data_c2 Data_c3 Data_c4 Data_c5 (6 Replies)
Discussion started by: vfrg
6 Replies

7. Shell Programming and Scripting

Combining rows into columns

hi experts, I have a flat file with below contents Database1 Table1 column1 Database1 Table1 column2 Database1 Table1 column3 Database1 Table1 column4 Database1 Table2 Column1 Database1 Table2 Column2 Database2 Table1 Column1 Database2 Table1 Column2 Database2 Table1 Column3... (9 Replies)
Discussion started by: Selva_2507
9 Replies

8. Shell Programming and Scripting

[Solved] awk compare two different columns of two files and print all from both file

Hi, I want to compare two columns from file1 with another two column of file2 and print matched and unmatched column like this File1 1 rs1 abc 3 rs4 xyz 1 rs3 stu File2 1 kkk rs1 AA 10 1 aaa rs2 DD 20 1 ccc ... (2 Replies)
Discussion started by: justinjj
2 Replies

9. Shell Programming and Scripting

Join two files combining multiple columns and produce mix and match output

I would like to join two files when two columns in each file matches with each other and then produce an output when taking multiple columns. Like I have file A 1234,ABCD,23,JOHN,NJ,USA 2345,ABCD,24,SAM,NY,USA 5678,GHIJ,24,TOM,NY,USA 5678,WXYZ,27,MAT,NJ,USA and file B ... (2 Replies)
Discussion started by: mady135
2 Replies

10. Shell Programming and Scripting

Combining certain columns of multiple files into one file

Hello Unix gurus, I have a large number of files (say X) each containing two columns of data and the same number of rows. I would like to combine these files to create a unique merged file containing X columns corresponding to the second column of each file (with a bonus of having the first... (3 Replies)
Discussion started by: ksennin
3 Replies
INTRO(1)							Linux User's Manual							  INTRO(1)

NAME
intro - introduction to user commands DESCRIPTION
Section 1 of the manual describes user commands and tools, for example, file manipulation tools, shells, compilers, web browsers, file and image viewers and editors, and so on. All commands yield a status value on termination. This value can be tested (e.g., in most shells the variable $? contains the status of the last executed command) to see whether the command completed successfully. A zero exit status is conventionally used to indicate suc- cess, and a nonzero status means that the command was unsuccessful. (Details of the exit status can be found in wait(2).) A nonzero exit status can be in the range 1 to 255, and some commands use different nonzero status values to indicate the reason why the command failed. NOTES
Linux is a flavor of UNIX, and as a first approximation all user commands under UNIX work precisely the same under Linux (and FreeBSD and lots of other UNIX-like systems). Under Linux there are GUIs (graphical user interfaces), where you can point and click and drag, and hopefully get work done without first reading lots of documentation. The traditional UNIX environment is a CLI (command line interface), where you type commands to tell the computer what to do. That is faster and more powerful, but requires finding out what the commands are. Below a bare minimum, to get started. Login In order to start working, you probably first have to login, that is, give your username and password. See also login(1). The program login now starts a shell (command interpreter) for you. In case of a graphical login, you get a screen with menus or icons and a mouse click will start a shell in a window. See also xterm(1). The shell One types commands to the shell, the command interpreter. It is not built-in, but is just a program and you can change your shell. Every- body has her own favorite one. The standard one is called sh. See also ash(1), bash(1), csh(1), zsh(1), chsh(1). A session might go like knuth login: aeb Password: ******** % date Tue Aug 6 23:50:44 CEST 2002 % cal August 2002 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 % ls bin tel % ls -l total 2 drwxrwxr-x 2 aeb 1024 Aug 6 23:51 bin -rw-rw-r-- 1 aeb 37 Aug 6 23:52 tel % cat tel maja 0501-1136285 peter 0136-7399214 % cp tel tel2 % ls -l total 3 drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin -rw-r--r-- 1 aeb 37 Aug 6 23:52 tel -rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2 % mv tel tel1 % ls -l total 3 drwxr-xr-x 2 aeb 1024 Aug 6 23:51 bin -rw-r--r-- 1 aeb 37 Aug 6 23:52 tel1 -rw-r--r-- 1 aeb 37 Aug 6 23:53 tel2 % diff tel1 tel2 % rm tel1 % grep maja tel2 maja 0501-1136285 % and here typing Control-D ended the session. The % here was the command prompt--it is the shell's way of indicating that it is ready for the next command. The prompt can be customized in lots of ways, and one might include stuff like username, machine name, current direc- tory, time, and so on. An assignment PS1="What next, master? " would change the prompt as indicated. We see that there are commands date (that gives date and time), and cal (that gives a calendar). The command ls lists the contents of the current directory--it tells you what files you have. With a -l option it gives a long listing, that includes the owner and size and date of the file, and the permissions people have for reading and/or changing the file. For example, the file "tel" here is 37 bytes long, owned by aeb and the owner can read and write it, others can only read it. Owner and permissions can be changed by the commands chown and chmod. The command cat will show the contents of a file. (The name is from "concatenate and print": all files given as parameters are concate- nated and sent to "standard output", here the terminal screen.) The command cp (from "copy") will copy a file. On the other hand, the command mv (from "move") only renames it. The command diff lists the differences between two files. Here there was no output because there were no differences. The command rm (from "remove") deletes the file, and be careful! it is gone. No wastepaper basket or anything. Deleted means lost. The command grep (from "g/re/p") finds occurrences of a string in one or more files. Here it finds Maja's telephone number. Pathnames and the current directory Files live in a large tree, the file hierarchy. Each has a pathname describing the path from the root of the tree (which is called /) to the file. For example, such a full pathname might be /home/aeb/tel. Always using full pathnames would be inconvenient, and the name of a file in the current directory may be abbreviated by only giving the last component. That is why "/home/aeb/tel" can be abbreviated to "tel" when the current directory is "/home/aeb". The command pwd prints the current directory. The command cd changes the current directory. Try "cd /" and "pwd" and "cd" and "pwd". Directories The command mkdir makes a new directory. The command rmdir removes a directory if it is empty, and complains otherwise. The command find (with a rather baroque syntax) will find files with given name or other properties. For example, "find . -name tel" would find the file "tel" starting in the present directory (which is called "."). And "find / -name tel" would do the same, but starting at the root of the tree. Large searches on a multi-GB disk will be time-consuming, and it may be better to use locate(1). Disks and Filesystems The command mount will attach the file system found on some disk (or floppy, or CDROM or so) to the big file system hierarchy. And umount detaches it again. The command df will tell you how much of your disk is still free. Processes On a UNIX system many user and system processes run simultaneously. The one you are talking to runs in the foreground, the others in the background. The command ps will show you which processes are active and what numbers these processes have. The command kill allows you to get rid of them. Without option this is a friendly request: please go away. And "kill -9" followed by the number of the process is an immediate kill. Foreground processes can often be killed by typing Control-C. Getting information There are thousands of commands, each with many options. Traditionally commands are documented on man pages, (like this one), so that the command "man kill" will document the use of the command "kill" (and "man man" document the command "man"). The program man sends the text through some pager, usually less. Hit the space bar to get the next page, hit q to quit. In documentation it is customary to refer to man pages by giving the name and section number, as in man(1). Man pages are terse, and allow you to find quickly some forgotten detail. For newcomers an introductory text with more examples and explanations is useful. A lot of GNU/FSF software is provided with info files. Type "info info" for an introduction on the use of the program "info". Special topics are often treated in HOWTOs. Look in /usr/share/doc/howto/en and use a browser if you find HTML files there. SEE ALSO
standards(7) COLOPHON
This page is part of release 3.44 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2007-11-15 INTRO(1)
All times are GMT -4. The time now is 05:37 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy