FADDIFF(1) General Commands Manual FADDIFF(1)
NAME
faddiff - report differences between FAD files
SYNOPSIS
faddiff [ -V | --version ] [ -v | --verbose | -d level | --debug=level
] [ -h | --help ] [ -p | --paths ] [ -n | --simulate ] [ -u | --ig-
nore-uid ] [ -g | --ignore-gid ] [ -m | --ignore-mode ] [ -o outfile |
--file=outfile ] file1 file2
DESCRIPTION
Faddiff reports differences between two FAD files (see fad(5)), such as
have been generated with mkfad(1). The input files must be specified
on the command line, though either one of them may be replaced with '-'
to indicate that it should be read from standard input. The result is
written to standard output.
All differences between the state of an individual file in the two FAD
files are reported on one line. The format of of such a line is:
path: changetype(oldvalue -> newvalue), ...
path represents the path of the file that has changed. changetype may
be one of the following:
added path is mentioned in the second FAD file only. The
brackets are empty.
deleted path is mentioned in the first FAD file only. The brack-
ets are empty.
mode path has different permissions in the two FAD files.
Bracketed are the permissions, expressed as octal num-
bers, in the first file and then in the second.
owner path has different a different owner in the two FAD
files. Bracketed are the numeric user ids in the first
file and then in the second.
group path has different a different group in the two FAD
files. Bracketed are the numeric group ids in the first
file and then in the second.
links path has a different set of hard links in the two FAD
files. Bracketed are the names of the other hard links
in the first file and then in the second.
type path has changed type. This indicates that path has been
deleted and subsequently recreated as a file-system ob-
ject of a different type. Bracketed are the types in the
first file and then in the second file. The types are
represented by the following characters:
f file
d directory
p pipe
l symbolic link
b block device
c character device
s socket
checksum path is a file whose contents is different as gauged by
the path's 32 bit checksum. Bracketed are the checksums
in the first file and then in the second.
linked_to path is a symbolic link which has different destinations
in the two FAD files. Bracketed are the symbolic link
destinations in the first file and then in the second.
major/minor path is a special device file which has different major
or minor numbers in the two FAD files. Bracketed are the
combined major and minor numbers in the first file and
then in the second.
Faddiff can read and write plain files or files compressed with either
compress(1) or gzip(1), but only if they have the correct file exten-
sion and are specified on the command line, rather than fed through
standard input.
CONFIGURATION
None.
OPTIONS
-d level, --debug=level Determines how verbose this program will be.
The message types displayed for the different
values of level are as follows: 0 displays no
messages; 1 displays only errors, 2 displays
errors and warnings; 3 displays errors, warn-
ings and informational messages; higher values
display errors, warnings, informational mes-
sages and various messages intended for debug-
ging. The default is 2.
-h, --help Displays a brief usage message.
-p, --paths Lists the compiled-in paths of various files
and directories that this program uses. -n,
--simulate Some external commands that this
program runs may be displayed rather than ac-
tually executed. BEWARE: different programs
implement different levels of simulation; so
this option may work perfectly; on the other
hand it may do nothing at all!
-v, --verbose Equivalent to -d 3.
-V, --version Prints the program's version number and exits.
-g,--ignore-gid Ignores changes of group.
-m,--ignore-mode Ignores changes of mode.
-o,--file=outfile Writes the database to outfile. The default
is to write to standard output.
-u,--ignore-uid Ignores changes of owner/user.
EXIT STATUS
Faddiff returns zero if there are no differences. If there are differ-
ences it returns non-zero. On failure it returns non-zero and displays
a diagnostic message. (Note that between releases 4.6.2 and 5.1, fad-
diff returned zero even if there were differences.)
FILES
None.
ENVIRONMENT VARIABLES
None.
EXAMPLES
The following output shows the results on running faddiff on two FAD
files. These files were generated with mkfad(1). In between time
changes of a type corresponding the the filenames were made:
faddiff before.fad after.fad
testdir/changedest: linked_to(dest1 -> dest2)
testdir/changegrp: group(79 -> 0)
testdir/changeme: links( -> ./linkedfile), checksum(5233 -> 5300)
testdir/changemin: major/minor(515 -> 772)
testdir/changemytype: type(f -> d)
testdir/changeown: owner(1663 -> 1194)
testdir/changeperm: mode(100600 -> 100755)
testdir/deleteme: deleted()
testdir/fad1: checksum(0 -> 25025)
testdir/fad2: added()
testdir/linkedfile: added()
testdir/newfile: added()
CAVEATS
None.
STANDARDS
This manual page documents version 7 of faddiff.
SEE ALSO
perl(1), fad(5), faddiff(1), compress(1), uncompress(1), gzip(1), gun-
zip(1), fad-config(1)
AUTHOR
Alexis Huxley <alexishuxley@gmail.com>
COPYRIGHT & DISTRIBUTION POLICY
Copyright (C) 1995-2024 Alexis Huxley
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MER-
CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.
30 Jul 2024 FADDIFF(1)