Sponsored Content
Top Forums Shell Programming and Scripting Comparing text in 2 files and output difference in another file. Post 302622865 by Epsilon on Thursday 12th of April 2012 05:08:28 PM
Old 04-12-2012
Here is the code:

Code:
$$ diff file1 file2 | grep "^> " | cut -c 3- > mismatchfile

---------- Post updated at 02:38 AM ---------- Previous update was at 02:33 AM ----------

Code:
$$ diff file1 file2 | grep "^> " | cut -c 3- > mismatchfile

Ofcourse , CarloM is right. diff command tells us the differences between two files.So if we remove 6,7d5 or any such information from output the remaining information will be useless.Although the above code completes the asked requirement.

sorry friends...I made a mistake...I didnot paid attention on the line "can you please tell me why I'm getting them" of post #3.That is why I have written above not required code.
Now
Here is an explanation of output of diff command:
Code:
0a1,2
> line1
> line2

means append line1 and line2 after line 0 of first file
Code:
2c4
< linex                     ---> line 2 of first file
--
> liney                     ----> line 4 of second file

means change line 2 of first file with line 4 of 2nd file
and
Code:
4d5
< linez                     ---> line 4 of first file

means delete line 4 of first file

so, here a means append, c means change and d means delete
number before a or d or c refers to line number in file1
number before a or d or c refers to line number in file2

Finally, if you follow the modifications suggested by diff, then you are going to make both queried files identical.

Last edited by Epsilon; 04-12-2012 at 06:47 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Comparing Columns and printing the difference from a particular file

Gurus, I have one file which is having multiple columns and also this file is not always contain the exact columns; sometimes it contains 5 columns or 12 columns. Now, I need to find the difference from that particular file. Here is the sample file: param1 | 10 | 20 | 30 | param2 | 10 |... (6 Replies)
Discussion started by: buzzusa
6 Replies

2. Shell Programming and Scripting

comparing to text files

Hi All, I have two files of the following formats file 1 - this is a big file >AB_1 gi|229194403|ref|ZP_04321208.1| group II intron reverse transcriptase/maturase gdfjafhlkhlnlklaklskckcfhhahgfahajfkkallalfafafa >AB_2 gi|229194404|ref|ZP_04321209.1| gfksjgfkjsfjslfslfslhf >AB_3... (1 Reply)
Discussion started by: Lucky Ali
1 Replies

3. Shell Programming and Scripting

comparing in files and output

i have a file a with contents tom lasole jon gille sam and a file b with contents tom|1234|abcf|newyork,ohio,oregon sam|2345|drft|texas,london hyle|4444|befr|wisconsin neyo|2333|tdtt|ohio,jersey i want to compare records in file a to file b such that when the name tom is... (5 Replies)
Discussion started by: dealerso
5 Replies

4. Shell Programming and Scripting

Comparing a text file's entries with ps -ef output

Shell : Korn os : AIX This is the ps output looking for a process called pmon. pmon runs with various 'service' names which is appended with an underscore as shown below. For example a pmon process for the service hexjkm will be named ora_pmon_hexjkm $ ps -ef | grep pmon oracle... (1 Reply)
Discussion started by: kraljic
1 Replies

5. Shell Programming and Scripting

Comparing 2 difference csv files

Hello, I have about 10 csv files which range from csv1 - csv10. Each csv file has same type/set of tabs and we have around 5-6 tabs for each of the csv file which have slightly different content(data). A sample of CSV1 is shown below: Joins: Data related to Joins, it can be any number of... (2 Replies)
Discussion started by: bobby1015
2 Replies

6. Shell Programming and Scripting

Compare two text files and output difference

Hi experts, I am trying to compare two text files and output the difference to another file. I'm not strictly looking for differences in text but additional text at the end of one file that isn't in another, so basically comparing the file 2 against file 1 and printing any additional text to... (9 Replies)
Discussion started by: martin0852
9 Replies

7. Shell Programming and Scripting

Comparing 2 CSV files and sending the difference to a new csv file

(say) I have 2 csv files - file1.csv & file2.csv as mentioned below: file1.csv ID,version,cost 1000,1,30 2000,2,40 3000,3,50 4000,4,60 file2.csv ID,version,cost 1000,1,30 2000,2,45 3000,4,55 6000,5,70 ... (1 Reply)
Discussion started by: Naresh101
1 Replies

8. Shell Programming and Scripting

Comparing 2 text files & downloading a file if the last lines are different

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

Comparing two files with numbers and taking difference in third file

Hi All, I have two files in the following format, with numbers being defined under columns(described by a set of headers) and rows(again defined by a set of identifiers) 2013 2013 Make200 Make201 Merc BMW Jpur Del ... (9 Replies)
Discussion started by: dev.devil.1983
9 Replies

10. UNIX for Beginners Questions & Answers

Comparing two files and list the difference with common first line content of both files

I have two file as given below which shows the ACL permissions of each file. I need to compare the source file with target file and list down the difference as specified below in required output. Can someone help me on this ? Source File ************* # file: /local/test_1 # owner: own #... (4 Replies)
Discussion started by: sarathy_a35
4 Replies
diff(1) 						      General Commands Manual							   diff(1)

NAME
diff - differential file and directory comparator SYNOPSIS
n] name] dir1 dir2 n] name] file1 file2 string] file1 file2 DESCRIPTION
Comparing Directories If both arguments are directories, sorts the contents of the directories by name, then runs the regular file algorithm (described below) on text files that have the same name in each directory but are different. Binary files that differ, common subdirectories, and files that appear in only one directory are listed. When comparing directories, the following options are recognized: Long output format; each text file is piped through to paginate it (see pr(1)). Other differences are remembered and summarized after all text file dif- ferences are reported. Applies recursively to common subdirectories encountered. reports files that are identical but otherwise not mentioned. Starts a directory in the middle of the sorted directory, beginning with file name. Comparing Files When run on regular files, and when comparing text files that differ during directory comparison, tells what lines must be changed in the files to bring them into agreement. usually finds a smallest sufficient set of file differences. However, it can be misled by lines con- taining very few characters or by other situations. If neither file1 nor file2 is a directory, either can be specified as in which case the standard input is used. If file1 is a directory, a file in that directory whose filename is the same as the filename of file2 is used (and vice versa). There are several options for output format. The default output format contains lines resembling the following: These lines resemble commands to convert file1 into file2. The numbers after the letters pertain to file2. In fact, by exchanging for and reading backwards one may ascertain equally how to convert file2 into file1. As in identical pairs where n1=n2 or n3=n4 are abbreviated as a single number. Following each of these lines come all the lines that are affected in the first file flagged by then all the lines that are affected in the second file flagged by Except for or which can be given with any of the others, the following options are mutually exclusive: Produce a script of and commands for the editor suitable for recreating file2 from file1. Extra commands are added to the output when compar- ing directories with so that the result is a shell script for converting text files common to the two directories from their state in dir1 to their state in dir2. Produce a script similar to that of the option that is not useful with but is more readable by humans. Produce a script similar to that of but in the opposite order, and with a count of changed lines on each insert or delete command. This is the form used by (see rcsdiff(1)). Produce a difference list with 3 lines of context. modifies the output format slightly: the output begins with identification of the files involved, followed by their cre- ation dates, then each change separated by a line containing about twelve asterisks Lines removed from file1 are marked with and lines added to file2 are marked Lines that change from one file to the other are marked in both files with with Changes that lie within 3 lines of each other in the file are grouped together on output. Output format similar to but with n lines of context. Do a fast, half-hearted job. This option works only when changed stretches are short and well separated, but can be used on files of unlimited length. Create a merged version of file1 and file2 on the standard output, with C preprocessor controls included so that a compilation of the result without defining string is equivalent to compiling file1, while compiling the result with string defined is equivalent to compiling file2. Ignore trailing space characters, except newline character and treat other string of blanks as equal. For example, and are treated as equal. Ignore all space characters, except newline character. For example, and are treated as equal. Ignores uppercase/lowercase differences. Thus is treated the same as Expand tabs in output lines. Normal or output adds one or more characters to the front of each line. Resulting misalignment of indentation in the orig- inal source lines can make the output listing difficult to interpret. This option preserves original source file indenta- tion. EXTERNAL INFLUENCES
Environment Variables determines the locale to use for the locale categories when both and the corresponding environment variable (beginning with do not specify a locale. If is not set or is set to the empty string, a default of "C" (see lang(5)) is used. determines the space characters for the command, and the interpretation of text within file as single- and/or multi-byte characters. determines the language in which messages are displayed. If any internationalization variable contains an invalid setting, and behave as if all internationalization variables are set to "C". See environ(5). International Code Set Support Single- and multi-byte character code sets are supported with the exception that and do not recognize multi-byte alternative space charac- ters. RETURN VALUE
Upon completion, returns with one of the following exit values: 0 No differences were found. 1 Differences were found. >1 An error occurred. EXAMPLES
The following command creates a script file is added to the end of the script in order to save the file: The script file can then be used to create the file from the file using the editor in the following manner: The following command produces the difference output with 2 lines of context information before and after the line that was different: The following command ignores all blanks and tabs and ignores uppercase-lowercase differences. WARNINGS
Editing scripts produced by the or option are naive about creating lines consisting of a single dot When comparing directories with the or options specified, first compares the files in the same manner as then runs the algorithm if they are not equal. This may cause a small amount of spurious output if the files are identical except for insignificant blank strings or uppercase/lowercase differences. The default algorithm requires memory allocation of roughly six times the size of the file. If sufficient memory is not available for han- dling large files, the option or can be used (see bdiff(1)). With other options if sufficient memory is not available, then either the or values can be increased. When run on directories with the option, recursively descends sub-trees. When comparing deep multi-level directories, more memory may be required than is currently available on the system. The amount of memory required depends on the depth of recursion and the size of the files. AUTHOR
was developed by AT&T, the University of California, Berkeley, and HP. FILES
used by option SEE ALSO
bdiff(1), cmp(1), comm(1), diff3(1), diffmk(1), dircmp(1), ed(1), more(1), nroff(1), rcsdiff(1), sccsdiff(1), sdiff(1), terminfo(4). STANDARDS CONFORMANCE
diff(1)
All times are GMT -4. The time now is 06:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy