Visit Our UNIX and Linux User Community


Combining the contents of two files


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Combining the contents of two files
# 1  
Old 08-14-2013
Combining the contents of two files

Hi,
I have a file a.csv on a Solaris 10 with the following content
Code:
you,me,them,us
us,them,you,me
them,you,me

and i have a second file b.csv with only a date and time stamp as
Code:
2013-08-14 00:00:00

I am trying to combining the two files in this way
Code:
2013-08-14 00:00:00,you,me,them,us
2013-08-14 00:00:00,us,them,you,me
2013-08-14 00:00:00,them,you,us,me

I tried to use the command paste -d, b.csv a.csv
but i get the result
Code:
2013-08-14 00:00:00,you,me,them,us
,us,them,you,me
,them,you,us,me

I would really appreciate if you can kindly help me out either using sed or paste.

Thanks

Last edited by kaf3773; 08-14-2013 at 04:43 PM.. Reason: Code tags [5th time]
# 2  
Old 08-14-2013
If your b.csv has ONLY one line, then this will do it:

Code:
 
$ cat a.csv
you,me,them,us
us,them,you,me
them,you,me
$ cat b.csv
2013-08-14 00:00:00
$ awk 'NR==1{the_date=$0} NR>1{print the_date","$0}' b.csv a.csv 
2013-08-14 00:00:00,you,me,them,us
2013-08-14 00:00:00,us,them,you,me
2013-08-14 00:00:00,them,you,me

Otherwise you would need to come up with the rule of which line from b.csv should be paired up with which line in a.csv

I see you would prefer to use sed or paste, but in your case you could use just shell
Code:
 
$ b=$( cat b.csv )
$ while read a; do echo $b","$a; done < a.csv  
2013-08-14 00:00:00,you,me,them,us
2013-08-14 00:00:00,us,them,you,me
2013-08-14 00:00:00,them,you,me

Again, that is only if b.csv has one line.

Last edited by migurus; 08-14-2013 at 04:57 PM.. Reason: additional info added to orig post
# 3  
Old 08-14-2013
Migurus,

This worked and i really appreciate your time !!!

Thanks
# 4  
Old 08-14-2013
Code:
awk '{print v","$0}' v="$(cat b.csv)" a.csv
2013-08-14 00:00:00,you,me,them,us
2013-08-14 00:00:00,us,them,you,me
2013-08-14 00:00:00,them,you,me


Previous Thread | Next Thread
Test Your Knowledge in Computers #304
Difficulty: Easy
sed is a stream editor and is used to perform basic text transformations on an input stream (a file or input from a pipeline).
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Combining 3 fastq files

Hello, I am working with next-gen short-read sequence data, which we receive in 3 fastq files. These are arranged in 4-line groups for each read: line1: read identifier, beginning, e.g., "@HWI-ST1342..." line2: DNA sequence, for files 1 and 2, 101 characters, for file 3, 7 chars. line3: "+"... (2 Replies)
Discussion started by: ljk
2 Replies

2. Shell Programming and Scripting

Combining files

Hi I have about 108 files (text files) that end with .avg and each one of these files have a distinct name that describes what is in the file. In each file there is a set of 80 values that are tab separated. I want to combine all 108 files into ONE main file. So each file is named: 1.avg... (5 Replies)
Discussion started by: phil_heath
5 Replies

3. Shell Programming and Scripting

Combining 2 files

i am having 2 files like this file 1 1, 2, 3, 4, file2 5, 6, 7, 8, what i want do is like this i want to put all the contents for file 2 after file 1,means adding column in file1 (5 Replies)
Discussion started by: sagar_1986
5 Replies

4. UNIX for Dummies Questions & Answers

Need Help in reading N days files from a Directory & combining the files

Hi All, Request your expertise in tackling one requirement in my project,(i dont have much expertise in Shell Scripting). The requirement is as below, 1) We store the last run date of a process in a file. When the batch run the next time, it should read this file, get the last run date from... (1 Reply)
Discussion started by: dsfreddie
1 Replies

5. UNIX for Dummies Questions & Answers

combining two files

Hi Gurus, I have 2 files: File1 Filename1 xx Filename1 yy Filename1 Total Filename2 xx Filename2 yy Filename2 zz Filename2 Total Filename3 xx Filename3 Total and File2: Filename1 10296 xxx Date: 09/01/08 Filename2 10296 xxx Date: 09/05/08... (36 Replies)
Discussion started by: rock1
36 Replies

6. Shell Programming and Scripting

Combining two files

I have two files and I need to combine (not append - but combine a row to a row) eg: File1: apples grapes oranges lemons File2: red green orange yellow After combining, the file should look like: (the second column should start at a specific byte) apples red grapes green... (7 Replies)
Discussion started by: hemangjani
7 Replies

7. Shell Programming and Scripting

Combining Two Files

Could someone help me reduce the number of runs for a shell program I created? I have two text files below: $ more list1.txt 01 AAA 02 BBB 03 CCC 04 DDD $ more list2.txt 01 EEE 02 FFF 03 GGG I want to combine the lines with the same number to get the below: 01 AAA 01 EEE 02... (4 Replies)
Discussion started by: stevefox
4 Replies

8. Shell Programming and Scripting

Combining Two Files

I have two files which contain data from two different transactions in the same format: <Name> - <Count> My goal is to end up with data in this format after combining the two: <Name> - <Count1> - <Count2> Is this possible to do with awk, or is there something better? Thanks... (3 Replies)
Discussion started by: bat711
3 Replies

9. UNIX for Dummies Questions & Answers

Combining files

Hi, is there a way to combine 2 files together, joining line 1 from file A with line 1 from file B, line 2 from A with line 2 from B etc. File A File B 1 4 2 5 3 6 Combined result = File C 14 25 36 (2 Replies)
Discussion started by: Enda Martin
2 Replies

10. UNIX for Dummies Questions & Answers

combining files

how will i combine these 2 files below, with the desired output specified below: file1: one two three four file2: red blue yellow green file3: aaa bbb ccc ddd (3 Replies)
Discussion started by: apalex
3 Replies

Featured Tech Videos