04-26-2008
Comparing two files
Hi Jean-Pierre,
Does stats1 and stats2 refer to the two input files? Will the code work if i give the path name like /home/frk/ragav/stats1 and /home/frk/ragav/stats2 instead of the file names? Then how should the code be modified?
If i assign the path like /home/frk/ragav/stats1 to a variable how can i call the path in the code?
When i assigned the file name to a variable like
a=stats1.txt
b=stats2.txt
and changed the code to
nawk '
/^Table Name/ { table = $3 ; tables[table]++ }
! NF || /^-+/ { next }
NR == FNR { $e[table] = $e[table] $0 ORS ; next }
{ $f[table] = $f[table] $0 ORS ; next }
END {
for (t in tables) {
if ($e[t] != $f[t]) {
out = "-----------------------------------------------------------------" ORS
out = out $e[t] ORS $f[t]
print out
}
}
}
' $e $f >> result.out
i am getting this error.
nawk: illegal field $()
input record number 1, file startendcut1.txt
source line number 4
Can you please help on the above two ways of modifying the code?
Last edited by ragavhere; 04-26-2008 at 06:31 AM..
Reason: Error reason included
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi
I need to compare shadow file sizes with their real file counterparts. If the shadow file size differs form the realfile size then it must send a mail. My problem is that our system has over 1600 shadowfiles in different directories, with different names. the only consistancy is the .sh file... (4 Replies)
Discussion started by: terrym
4 Replies
2. Shell Programming and Scripting
I have a file called X, which contains the following:
10
100
200
300
I then have file Y, which containts the following:
10
200
500
800
I want to write a script that will compare the contents of Y with the contents of X and ONLY return values in Y that does not exist in X (output... (5 Replies)
Discussion started by: soliberus
5 Replies
3. Shell Programming and Scripting
I really need help on creating a script that does the following:
I have one file (File 1) with lines in the following format:
Name.maf score1 score2
I have a second file (File 2) with lines in the following format:
label start end Name
What I need to do is compare File 1 and... (1 Reply)
Discussion started by: awknerd
1 Replies
4. Shell Programming and Scripting
So I have two files:
File1
pictures.txt 1.1 1.3
dance.txt 1.2 1.4
treehouse.txt 1.3 1.5
File2
pictures.txt 1.5 ref2313 1.4 ref2345 1.3 ref5432 1.2 ref4244
dance.txt 1.6 ref2342 1.5 ref2352 1.4 ref0695 1.3 ref5738 1.2 ref4948 1.1
treehouse.txt 1.6 ref8573 1.5 ref3284 1.4 ref5838... (24 Replies)
Discussion started by: linuxkid
24 Replies
5. Shell Programming and Scripting
I've two files with data like below:
file1.txt:
AAA,Apples,123
BBB,Bananas,124
CCC,Carrot,125
file2.txt:
Store1|AAA|123|11
Store2|BBB|124|23
Store3|CCC|125|57
Store4|DDD|126|38
So,the field separator in file1.txt is a comma and in file2.txt,it is |
Now,the output should be... (2 Replies)
Discussion started by: asyed
2 Replies
6. UNIX for Advanced & Expert Users
Hi Guys ,
we have one directory ...in that directory all files will be set on each day..
files must have header ,contents ,footer..
i wants to compare the header,contents,footer ..if its same means display an error message as 'files contents same' (7 Replies)
Discussion started by: Venkatesh1
7 Replies
7. Shell Programming and Scripting
Hi all
I have to compare two file this time
one is
P11223
x1124
x1145
t5678
e3456
z2345
another file
P11223 x s (2 Replies)
Discussion started by: manigrover
2 Replies
8. Shell Programming and Scripting
Hi Friends,
I have file1.txt
file2.txt
I tried using the diff and comm but not getting the expected output..
I want where exactly the miss match occurs. probably the field.
Sourcevalue|Targetvalue|Linenumber|field
29123975|2923975|3|1
Please help. (6 Replies)
Discussion started by: i150371485
6 Replies
9. Shell Programming and Scripting
I hope I can explain this correctly. I am using Bash-4.2 for my shell.
I have a group of file names held in an array. I want to compare the names in this array against the names of files currently present in a directory. If the file does not exist in the directory, that is not a problem.... (5 Replies)
Discussion started by: BudMan
5 Replies
10. UNIX for Beginners Questions & Answers
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
LEARN ABOUT NETBSD
compile_et
COMPILE_ET(1) General Commands Manual COMPILE_ET(1)
NAME
compile_et - error table compiler
SYNOPSIS
compile_et file
DESCRIPTION
Compile_et converts a table listing error-code names and associated messages into a C source file suitable for use with the com_err(3)
library.
The source file name must end with a suffix of ``.et''; the file consists of a declaration supplying the name (up to four characters long)
of the error-code table:
error_table name
followed by up to 256 entries of the form:
error_code name, " string "
and a final
end
to indicate the end of the table.
The name of the table is used to construct the name of a subroutine initialize_XXXX_error_table which must be called in order for the
com_err library to recognize the error table.
The various error codes defined are assigned sequentially increasing numbers (starting with a large number computed as a hash function of
the name of the table); thus for compatibility it is suggested that new codes be added only to the end of an existing table, and that no
codes be removed from tables.
The names defined in the table are placed into a C header file with preprocessor directives defining them as integer constants of up to 32
bits in magnitude.
A C source file is also generated which should be compiled and linked with the object files which reference these error codes; it contains
the text of the messages and the initialization subroutine. Both C files have names derived from that of the original source file, with
the ``.et'' suffix replaced by ``.c'' and ``.h''.
A ``#'' in the source file is treated as a comment character, and all remaining text to the end of the source line will be ignored.
BUGS
Since the original compile_et uses a very simple parser based on yacc(1), and this current version of compile_et uses an awk/sed combina-
tion of scripts, its error recovery leaves much to be desired.
SEE ALSO
com_err (3).
Ken Raeburn, "A Common Error Description Library for UNIX".
SIPB 30 Mar 1998 COMPILE_ET(1)