04-16-2008
Comparing two files and appending only missing lines.
Hi All,
I am a newbie to Shell scripting. Please help me with the Following problem,
1. I have two files with the same name in different locations in the same machine.
Eg: /root/testfolder/a ---- location 1
/tmp/testfolder/a ----- location 2
2. I want to compare the files in location 1 and location 2.
Eg: diff /root/testfolder/a /tmp/testfolder/a
(Please suggest the best way using diff )
3. I must append only the lines missing in location 1(i.e. /root/testfolder/a) without losing any content of location 1.
Eg:
File in location 1
/root/testfolder/a)
Added line in Location 1
This is a test Script
But i am stuck.Please help
This is Added line to LOCATION 1(/root/testfolder/a)
File in location 2
/tmp/testfolder/a)
Added Line in the Location 2 (/tmp/testfolder/a)
This is a test Script
But i am stuck.Please help
This is added line for testing in LOCATION 2(/tmp/testfolder/a)
Executing diff command:
diff /root/testfolder/a /tmp/testfolder/a
Say output of the diff command looks like this:
1c1
< Added line in Location 1 (/root/testfolder/a)
---
> Added Line in the Location 2 (/tmp/testfolder/a)
4c4
< This is Added line to LOCATION 1(/root/testfolder/a)
---
> This is added line for testing in LOCATION 2(/tmp/testfolder/a)
Here,
I am concerned only to append those lines starting with ">" to the correct lines of /root/testfolder/a
Expected result in /root/testfolder/a
Added Line in the Location 2 (/tmp/testfolder/a)
Added line in Location 1
This is a test Script
This is added line for testing in LOCATION 2(/tmp/testfolder/a)
But i am stuck.Please help
Please help me develop a shell script to solve the above posted problem.
Thanks in advance
Karthick.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I have a file containing a single field on every row. What I need is to append one on to the end of another, e.g.
The input file looks like this:
nnnnn
mmmmmm
nnnnn
mmmmmm
I need it to look like this:
nnnnn mmmmmm
nnnnn mmmmmm
Any ideas would be much appreciated,... (8 Replies)
Discussion started by: pondlife
8 Replies
2. Shell Programming and Scripting
Is there a way to combine two lines onto a single line...append the following line onto the previous line?
I have the following file that contains some blank lines and some lines I would like to append to the previous line...
current file:
checking dsk c19t2d6
checking dsk c19t2d7
... (2 Replies)
Discussion started by: mr_manny
2 Replies
3. Shell Programming and Scripting
Hi Friends,
I have 2 files A and B . I want to compare the 3rd line of file A and B .
(I dont want to compare the 2 files, using diff or cmp). I just want to know whether 3rd line of A matches the 3 rd line of B. Can anybody share their knowledge on the same?
Thanks ,
Vijaya (12 Replies)
Discussion started by: vijaya2006
12 Replies
4. Shell Programming and Scripting
Hi,
I have 2 files
file1
********
01-05-09|java.xls|
02-05-08|c.txt|
08-01-09|perl.txt|
01-01-09|oracle.txt|
********
file2
********
01-02-09|windows.xls|
02-05-08|c.txt|
01-05-09|java.xls|
08-02-09|perl.txt|
01-01-09|oracle.txt|
******** (8 Replies)
Discussion started by: shekhar_v4
8 Replies
5. Shell Programming and Scripting
Hello All,
I am writting file comparison Utility and I have encountered such a senario where there are 2 files such as follows-
1#!/usr/local/bin/python
2 import gsd.scripts.admin.control.gsdPageEscalate
3.gsd.scripts.admin.control.gsdPageEscalate.main()
1 #!/usr/local/bin/python... (10 Replies)
Discussion started by: Veenak15
10 Replies
6. UNIX for Dummies Questions & Answers
Hello all,
I always found help for my problems using the search option, but this time my request is too specific. I have two files that I want to compare. File1 is the index and File2 contains the data:
File1:
chr1 protein_coding exon 500 600 . + . gene_id "20532";... (0 Replies)
Discussion started by: DerSeb
0 Replies
7. Shell Programming and Scripting
Hello,
Please help me with this problem if you have a solution.
I have two files:
<file1> : In each line, first word is an Id and then other words that belong to this Id
piMN-1 abc pqr xyz py12
niLM y12 FY4 pqs
fiRLym F12 kite red
<file2> : same as file1, but can have extra lds... (3 Replies)
Discussion started by: mira
3 Replies
8. Shell Programming and Scripting
Hello I'm having a little difficulty in writing a shell script for a few simple tasks.
First I have two files "file1.txt" and "file2.txt" and I want to read and compare the last line of each file. The files look like this.
File1.txt
File2.txt
After comparing the two lines I would... (2 Replies)
Discussion started by: RustikGaming
2 Replies
9. Shell Programming and Scripting
I want to compare 2 files, locus_file.txt is a very large file and attr.txt is a small file. I want to match the first 2 columns of the first file to the second column of attr.txt and print the attributes together.
locus_file.txt:large file
LOC_Os02g47020, LOC_Os03g57840,0.88725114... (3 Replies)
Discussion started by: Sanchari
3 Replies
10. Shell Programming and Scripting
Hello all,
I have a large csv file where there are four types of rows I need to merge into one row per person, where there is a column for each possible code / type of row, even if that code/row isn't there for that person.
In the csv, a person may be listed from one to four times... (9 Replies)
Discussion started by: RalphNY
9 Replies
bdiff(1) User Commands bdiff(1)
NAME
bdiff - big diff
SYNOPSIS
bdiff filename1 filename2 [n] [-s]
DESCRIPTION
bdiff is used in a manner analogous to diff to find which lines in filename1 and filename2 must be changed to bring the files into agree-
ment. Its purpose is to allow processing of files too large for diff. If filename1 (filename2) is -, the standard input is read.
bdiff ignores lines common to the beginning of both files, splits the remainder of each file into n-line segments, and invokes diff on cor-
responding segments. If both optional arguments are specified, they must appear in the order indicated above.
The output of bdiff is exactly that of diff, with line numbers adjusted to account for the segmenting of the files (that is, to make it
look as if the files had been processed whole). Note: Because of the segmenting of the files, bdiff does not necessarily find a smallest
sufficient set of file differences.
OPTIONS
n The number of line segments. The value of n is 3500 by default. If the optional third argument is given and it is numeric, it is
used as the value for n. This is useful in those cases in which 3500-line segments are too large for diff, causing it to fail.
-s Specifies that no diagnostics are to be printed by bdiff (silent option). Note: However, this does not suppress possible diagnos-
tic messages from diff, which bdiff calls.
USAGE
See largefile(5) for the description of the behavior of bdiff when encountering files greater than or equal to 2 Gbyte ( 2**31 bytes).
FILES
/tmp/bd?????
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWesu |
+-----------------------------+-----------------------------+
|CSI |enabled |
+-----------------------------+-----------------------------+
SEE ALSO
diff(1), attributes(5), largefile(5)
DIAGNOSTICS
Use help for explanations.
SunOS 5.10 14 Sep 1992 bdiff(1)