redirect output into the middle of a file


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers redirect output into the middle of a file
# 1  
Old 12-18-2009
redirect output into the middle of a file

If I want to cat one file and have the output inserted into a specific place on another file, how is this done? I know how to append >> and to overwrite > but say I have a file with:

File1:
abc
def
ghi
jkl


And a File with:

File2:
mno
pqr
stu
vwx

And I want to place the contents of file one between the pqr and stu lines of file 2, how do i do it?
# 2  
Old 12-18-2009
well, if you know exactly where you want to insert stuff into the 2nd file,
and the files aren't too large:

Code:
vi +/pqr file_nm << EOF
:r other_file_nm^M
:wq^M
EOF

Where the ^M is entered using vi with CONTROL-V, ENTER

Redirect the output to /dev/null, if you don't want to see it work.

Another way might be:

Code:
(
sed -n '1,/pqr/p' file_nm
cat other_file_nm
sed -n '/stu/,$p' file_nm
) > file_nm.mangled

Then rename the mangled file.
# 3  
Old 12-18-2009
Tools if you know where to break the file

Code:
head -2 file1 ; cat file2 ; tail -2 file1

or, to send to a file
Code:
head -2 file1 >outfile ; cat file2 >>outfile ; tail -2 file1 >>outfile

# 4  
Old 12-18-2009
for really large files:
Code:
start=12443 
awk -v ins=$(< filetoinsert) -v start=$start '{if(FNR==start) {print; print ins}
                                                           else {print} }' inputfile > newfile

# 5  
Old 12-18-2009
Code:
gawk 'FNR==NR{ s[++d]=$0;next}
/pqr/{
    print
    for(i=1;i<=d;i++){  print s[i]  }
    next
}{print}
' file1 file2

# 6  
Old 12-18-2009
Code:
sed '/pqr/rfile1' file2

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Redirect script output to a file and mail the output

Hi Guys, I want to redirect the output of 3 scripts to a file and then mail the output of those three scripts. I used below but it is not working: OFILE=/home/home1/report1 echo "report1 details" > $OFILE =/home/home1/1.sh > $OFILE echo... (7 Replies)
Discussion started by: Vivekit82
7 Replies

2. Shell Programming and Scripting

script to mail monitoring output if required or redirect output to log file

Below script perfectly works, giving below mail output. BUT, I want to make the script mail only if there are any D-Defined/T-Transition/B-Broken State WPARs and also to copy the output generated during monitoring to a temporary log file, which gets cleaned up every week. Need suggestions. ... (4 Replies)
Discussion started by: aix_admin_007
4 Replies

3. UNIX for Advanced & Expert Users

Redirect Topas output to a file

Hi, I want to know how to redirect the output of topas -P to a file in a readable format. I tried doing it by using topas -P > topas.txt but the output is not properly aligned and when I opened it using vi it ahd some characters. Please help me out in this. Thanks (1 Reply)
Discussion started by: Preetha
1 Replies

4. Shell Programming and Scripting

Redirect the output in a file and on screen

I am trying to get following result from the scipt I have. First time it generates the o/p in correct format. However if I run it again it appends to the existing file. I would like to see o/p on screen as well as save it in file. Everytime it should create new file. ## I/P file 0174 0175... (3 Replies)
Discussion started by: dynamax
3 Replies

5. Shell Programming and Scripting

How to redirect output of ls to a file?

Hi All, I want to redirect only the file names to a new file from the ls -ltr directroy. how Can i do it. my ls -ltr output will be as below. -rwxr-xr-x 1 118 103 28295 Jul 26 2006 event.podl -rwxr-xr-x 1 118 103 28295 Jul 26 2006 xyz.podl I want my new file... (6 Replies)
Discussion started by: girish.raos
6 Replies

6. UNIX for Dummies Questions & Answers

redirect output to a file name

Hi all!! is possible to assign the output of some command to filename, i.e. grep_output.txt Otherwise, I want to open a new file which name is inside another, how can I do it? Thanks a lot! (7 Replies)
Discussion started by: csecnarf
7 Replies

7. Shell Programming and Scripting

Redirect grep output into file !!!!!

Hi, I am writing the following code in command prompt it is working fine. grep ',222,' SAPPCO_20080306.CSV_old > SAPPCO_20080306.CSV_new But the command is not working in the Shell Script... ########################################## #!/bin/sh #... (2 Replies)
Discussion started by: hanu_oracle
2 Replies

8. Shell Programming and Scripting

appending to sed output of one file into the middle of file

hi, i have a file file1 file2 ----------- ----------------- aa bbb ccc 111 1111 1111 ddd eee fff 222 3333 4444 ggg hhh... (5 Replies)
Discussion started by: go4desperado
5 Replies

9. UNIX for Dummies Questions & Answers

Redirect output to a file

Ahhhrrrggg I'm having a brain fart... I want to take the output of a command and redirect it to a file... This works.... $ man cp | cat >> copy_help but this doesn't keytool -help |cat >> keytool_help It just produces... these lines... more keytool_help ] ... ... (11 Replies)
Discussion started by: jimmyc
11 Replies

10. Shell Programming and Scripting

redirect output to file?

Hi: I am currently working on a program which requires direct its ouput to a file here is an example ./proram arg_1 arg_2 when program ends all output will be arg_2 file Is that possible I am not a bad programmer, However I am stuck there. Can anyone give a hint? Thanks SW (1 Reply)
Discussion started by: slackware
1 Replies
Login or Register to Ask a Question