Sponsored Content
Top Forums UNIX for Advanced & Expert Users Comparing two files and writing mismatched rows along with mismatched columns. Pointing out the mism Post 302997137 by bakunin on Monday 8th of May 2017 12:02:57 PM
Old 05-08-2017
Quote:
Originally Posted by piyush pankaj
But this is giving me only the mismatched records or rows. I am not getting any way to point out the mismatched columns as well. Please help me out if its possible to do is using shell script or awk command as i am very new to this. Thanks in advance.
Before writing any code: notice that you are implicitly working context-oriented and - as a principle - you cannot do this with regexps. You will need a parser! (see here for an in-depth discussion about this). For instance, you break down this:

Code:
3|rohit|**delhi**|**QA**

Into two differences, "delhi/bangalore" and "QA/dev". But without your (outside) knowledge of "delimiters" and "fields", etc. - that is: you involuntarily parsing the input as you read it - there is only one different part. The fact that "|" occurs once in the first variant (from file 1) and once in the second variant (from file 2) means only as much as the "e" in "delhi" occurring in "bangalore" too.

That means, you need to "build into" the script you are about to write this knowledge. You can start by simply reading line for line and splitting it into fields. These fields can then be compared.

Notice that you still need to define how different lines are to be matched. Consider these two file contents:

Code:
a|b|c     a|b|c
d|e|f     d|x|f
d|x|f     d|e|f

will these files be "identical" per your definition because the sequence of the lines doesn't matter or will these be considered two differences because it does?

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. HP-UX

ld: Can't find library or mismatched ABI for -lstdc++

Hi, I am having problem of linking .o and I am working with HP -UX gcc version is 3.4.2 . I have complied few cpp files and got .o's. But at the time of linking i am having issue. it is returning ld: Can't find library or mismatched ABI for -lstdc++ Fatal error. I have lib at location ... (0 Replies)
Discussion started by: ghananil
0 Replies

2. HP-UX

ld: Can't find library or mismatched ABI for

I started building a program which connects to MySQL and got: ld: Can't find library or mismatched ABI for -lmysqlclient_r I tried building my own MySQL and use these, and it worked but then it gave me: ld: Can't find library or mismatched ABI for -lrt But librt is a system library (and... (1 Reply)
Discussion started by: selalerer
1 Replies

3. HP-UX

ld: Can't find library or mismatched ABI for -lstlport_aCC

Hi All, while compiling on HP UX, i am getting the following error ld: Can't find library or mismatched ABI for -lstlport_aCC i am new to unix and HPUX, please suggest solution ASAS thanks in advance vindhyalesh (3 Replies)
Discussion started by: vindhyalesh
3 Replies

4. Linux

Error Mismatched object file

Dear All, Need your help to rectify this error. Recently I have upgraded my Linux server from 32 bit to 64 bit server. OS details are Red Hat Enterprise Linux Server release 5.3 Kernel 2.6.18-120.el5 on an x86_64 After upgradation, when i try to compile or catalog any program, it is... (2 Replies)
Discussion started by: mysmileforu
2 Replies

5. Shell Programming and Scripting

Comparing rows in same file and writing the result in new file

Help needed... Can you tell me how to compare the last two couple entries in a file and print their result in new file..:confused: I have one file Check1.txt \abc1 12345 \abc2 12327 \abc1 12345 \abc2 12330 I want to compare the entries in Check1 and write to... (1 Reply)
Discussion started by: kichu
1 Replies

6. Shell Programming and Scripting

Comparing rows and columns

Hi, i've a .csv file with the data as below: - file1.h, 2.0 file2.c, 3.1 file1.h, 2.5 file3.c, 3.3.3 file1.h, 1.2.3 I want to remove the duplicate file names considering only the one with the highest version number.. output should be file1.h, 2.5 file2.c, 3.1 file3.c,... (3 Replies)
Discussion started by: pravsripad
3 Replies

7. Shell Programming and Scripting

Comparing Columns and writing a new file

I have a table with one column File1.txt 1 2 3 4 5 6 7 8 9 10 Another table with two columns; This has got a subset of entries from File 1 but not unique because they have differing values in col 2. File2.txt 1 a 2 d 2 f 6 r 6 e (3 Replies)
Discussion started by: cs_novice
3 Replies

8. UNIX for Dummies Questions & Answers

Writing a script to take the average of two columns every 3 rows

I have a dataset with 120 columns. I would like to write a script, that takes the average of every two columns, starting from columns 2 and 3, and moving consecutively in frames of 3 columns, all the way until the last column. The first column in the output file would be the averages of columns... (1 Reply)
Discussion started by: evelibertine
1 Replies

9. Shell Programming and Scripting

awk delimiter count if mismatched?

Hi all, I have a file where in it has lot of records in it. I have written below stuff to find the number of fields as shown below `awk -F '|' '{print NF-1}' file.txt| head -1` how do i proceed if in case any record in particular is having more number of delimiters, if it having??? what... (7 Replies)
Discussion started by: nikhil jain
7 Replies

10. Programming

Mismatched free() / delete / delete [] line no missing

Could you tell me the possibilities of the reason to get the Mismatched free() / delete / delete . I unable to see the line no in the valgrind report. it displays the function name. with that function name, I am not able to find where exactly the issue is there.I am getting the Mismatched free()... (3 Replies)
Discussion started by: SA_Palani
3 Replies
SGMLDIFF(1)															       SGMLDIFF(1)

NAME
sgmldiff - Find differences in the markup of two SGML files SYNOPSIS
sgmldiff [ options ... ] file1 file2 [ -a | --attributes | -c [ attributes | nesting | textpos ] | --context [ attributes | nesting | textpos ] | -s | --statistics | -h | --help | -v | --version ] DESCRIPTION
This perl script allows to determine the structural differences between two SGML files. It compares the files, regardless of what is in between the tags, to only focus on the markup. Its output is similar to diff(1). The typical use of sgmldiff is to compare an SGML file with its translation into another language. If the translation was done cleanly, sgmldiff returns without finding any difference in the markup. An example of a typical call to sgmldiff is: sgmldiff english.sgml italiano.sgml If there are differences in markup between both files, sgmldiff will output a series of differences reports summarized with lines of the form: 169a164 At line 169 of the first file, line 164 of the second file has been added. 8a12,15 At line 8 of the first file, lines 12 to 15 of the second file have been added. 41d28 Line 41 of the first file has been destroyed, to obtain line 28 of the second file. 63,66d61 Lines 63 to 66 of the first file have been destroyed. to obtain line 61 of the second file. 52c51 Line 52 of the first file has been changed into line 51 of the second file. 5,7c8,10 Lines 5 to 7 of the first file have been changed into lines 8 to 10 of the second line. In addition to those summaries, the lines of the first file are shown preceeded by '<' and the lines of the second file are shown preceeded by '>". OPTIONS
Here is the list of actions that can be requested to sgmldiff: [ -a | --attributes ] Include the attribute values in the difference tests. Don't set this value if the attributes are likely to be translated. Set this value if the attributes value shouldn't change between both files. Default is to don't include the attributes in the difference tests. [ -c [ attributes | nesting | textpos ] | --context [ attributes | nesting | textpos ] ] Add more context to the difference. Since every test between the tags is removed before testing the differences, sgmldiff is likely to resynchronize itself at the wrong place, by thinking the location in both files correspond, while it's not true. By adding more context to the compared area, such risk is disminished. The allowed values for the --context option are: attributes Take into account the attribute names. The attribute values are controlled by the attributes option. nesting Take into account the nesting level of all the compared tags. textpos Take into account the position in the text. [ -s | --statistics ] Print some SGML information at the end. [ -h | --help ] Print a short help message and exit [ -v | --version ] Print the version identifier and exit FILES
AUTHORS
Frederik Fouvry Developer of sgmldiff. SEE ALSO
jw(1) conversion from a SGML file to other file formats nsgmls(1) a base component of Jade DSSSL engine http://sources.redhat.com/docbook-tools/ <URL:http://sources.redhat.com/docbook-tools/> the home page of the DocBook tools, a compendium of all tools necessary to process DocBook files, including the DocBook-utils 12 September 2012 SGMLDIFF(1)
All times are GMT -4. The time now is 05:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy