mirror of https://github.com/tLDP/LDP
36 lines
781 B
Bash
36 lines
781 B
Bash
#!/bin/bash
|
|
# file-comparison.sh
|
|
|
|
ARGS=2 # Two args to script expected.
|
|
E_BADARGS=85
|
|
E_UNREADABLE=86
|
|
|
|
if [ $# -ne "$ARGS" ]
|
|
then
|
|
echo "Usage: `basename $0` file1 file2"
|
|
exit $E_BADARGS
|
|
fi
|
|
|
|
if [[ ! -r "$1" || ! -r "$2" ]]
|
|
then
|
|
echo "Both files to be compared must exist and be readable."
|
|
exit $E_UNREADABLE
|
|
fi
|
|
|
|
cmp $1 $2 &> /dev/null
|
|
# Redirection to /dev/null buries the output of the "cmp" command.
|
|
# cmp -s $1 $2 has same result ("-s" silent flag to "cmp")
|
|
# Thank you Anders Gustavsson for pointing this out.
|
|
#
|
|
# Also works with 'diff', i.e.,
|
|
#+ diff $1 $2 &> /dev/null
|
|
|
|
if [ $? -eq 0 ] # Test exit status of "cmp" command.
|
|
then
|
|
echo "File \"$1\" is identical to file \"$2\"."
|
|
else
|
|
echo "File \"$1\" differs from file \"$2\"."
|
|
fi
|
|
|
|
exit 0
|