Concatenating two files


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Concatenating two files
# 1  
Old 09-15-2008
Lightbulb Concatenating two files

HI
I need to concatenate two files which are having headers. the result file should contain only the header from first file only and the header in second file have to be skipped.

file1:
name age
sriram 23

file2
name age
prabu 25

result file should be
name age
sriram 23
prabu 25

how to do this in script?

Thank in advance
Sriram
# 2  
Old 09-15-2008
Hammer & Screwdriver One approach to solve

> cat file1
name age
sriram 23
> cat file2
name age
prabu 25
> cat file1 >file3 ; tail +2 <file2 >>file3
> cat file3
name age
sriram 23
prabu 25
# 3  
Old 09-15-2008
how to do this if i have n number of files
# 4  
Old 09-15-2008
Hammer & Screwdriver One approach; and there are many

The following example assumes that the input files are all in the format of "file*"


Code:
#! /usr/bin/bash

ls file* >my_list
rm big_file 2>/dev/null
first_f=1

while read zf
   do
   if [ $first_f -gt 0 ]
      then
         cat "$zf" >>big_file
         first_f=0
      else
         tail +2 "$zf" >>big_file
   fi
done <my_list

exit 0

# 5  
Old 09-15-2008
Code:
 sed q file1 > file.new;ls file[12] | xargs -i tail +2 {} >> file.new

# 6  
Old 09-15-2008
Code:
format head=
name 	age
---------------
.
format content=
@<<<<<<<@>>>>>>
$name $age
.
open(FH,">out.txt") or die "Can not open file!";
select FH;
$^=head;
$~=content;
open(FH1,"<first.txt");
while(<FH1>){
	if($.>1)
	{
		($name,$age)=split(" ",$_);
		write;
	}
	
}
close(FH1);
open(FH1,"<second.txt");
while(<FH1>){
	if($.>1)
	{
		($name,$age)=split(" ",$_);
		write;
	}
}
close(FH1);

# 7  
Old 09-16-2008
you can use
cat file2>>file1
it append file2 after file1.
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Concatenating 2 lines from 2 files having matching strings

Hello All Unix Users, I am still new to Unix, however I am eager to learn it.. I have 2 files, some lines have some matching substrings, I would like to concatenate these lines into one lines, leaving other untouched. Here below is an example for that.. File 1 (fasta file): >292183... (6 Replies)
Discussion started by: Mohamed EL Hadi
6 Replies

2. Shell Programming and Scripting

Concatenating two files in required format

Firstly one of my mysql queries will yeild following output +-------+---------------------+-------------------+----------------------------------------------------------------------------+ | ID | PLATFORM | SORT_NAME | DESCRIPTION ... (2 Replies)
Discussion started by: vivek d r
2 Replies

3. Shell Programming and Scripting

Concatenating 3 files into a single file

I have 3 files File1 C1 C2 c3 File 2 C1 c2 c3 File 3 C1 c2 c3 Now i want to have File1 as C1 c2 c3 I File2 as C1 c2 c3 O File3 as c1 c2 c3 D and these 3 files should be concatenated into a single file how can it be done in unix script? (3 Replies)
Discussion started by: Codesearcher
3 Replies

4. Shell Programming and Scripting

concatenating similar files in a directory

Hi, I am new in unix. I have below requirement: I have two files at the same directory location File1.txt and File2.txt (just an example, real scenario we might have File2 and File3 OR File6 and File7....) File1.txt has : header1 record1 trailer1 File2.txt has: header2 record2... (4 Replies)
Discussion started by: Deepak62828r
4 Replies

5. UNIX for Dummies Questions & Answers

Concatenating Text Files

Hi, I have 30 text files on UNIX that I need to concatenate and create one big file. Could anyone provide me with a solution (if one exist)? I need the answer asap (today). Thanks a lot. Denis (5 Replies)
Discussion started by: 222001459
5 Replies

6. Shell Programming and Scripting

negatively concatenating files

That subject might sound weird. What I have is two files. One looks like: rf17 pts/59 Jul 10 08:43 (10.72.11.22) 27718 pts/59 0:00 b rf17 pts/3 Jul 10 10:03 (10.72.11.22) 32278 pts/3 1:43 b rf58 pts/29 Jul 10 10:09 (10.72.11.51) 44220 pts/29 0:06 b rf58 pts/61 Jul 10 08:45 (10.72.11.51)... (2 Replies)
Discussion started by: raidzero
2 Replies

7. UNIX for Dummies Questions & Answers

Concatenating records from 2 files

I'm trying to concatenate records from 2 files and output it to a third file. The problem I'm running into is that it seems like the "While" command is limited to processing one file at a time. It seems like you could read a record from file1 into a variable. Then do the same for the for file2.... (4 Replies)
Discussion started by: Powcmptr
4 Replies

8. UNIX for Dummies Questions & Answers

concatenating x files into a one...

... i have 4 files to concatenate but in a certain order and i wanted to do it in a shorter one line command , if possible ! 4 files : file , file0 , file1 and file2 file1 into file2 file0 into the result file into the result thanks in advance Christian (1 Reply)
Discussion started by: Nicol
1 Replies
Login or Register to Ask a Question