|
Script error.. for comparing 2 files!
Hi
I am using the below script to compare two files.. i am getting error as mentioned below:
#!/bin/sh
# Script to find the difference between 2 files
# Remember the old file file1 should always be the first argument. Else, the logic would reverse.
# diff.sh <old file> <new file>
if [[ $# -ne 2 ]] ; then
echo "Need just 2 files to compare"
exit 1
fi;
# Take the diff by ignoring the blank and whitespaces.
diff -b -w ${1} ${2} > ${1}.diff
if [[ $? -eq 0 ]] ; then
echo "No files were added/removed"
else
echo "Files were added/removed"
fi;
# process the diff file.
# A line might look like
# < text-which-went-out
# > text-which-came-in
while read line
do
if [[ ${line:0:2} == "< " ]] ; then
echo ${line:2} is removed.
fi;
if [[ ${line:0:2} == "> " ]] ; then
echo ${line:2} is added.
fi;
done < ${1}.diff
when i run:diff.sh <oldfilename> <newfilename>
/home/cvs ->diff.sh 2047files.txt 2048files.txt
Files were added/removed
diff.sh[23]: ${line:0:2}: The specified substitution is not valid for this command.
can some one correct this...
Note; But my puruse is done, i am able to create a another file where i could see the diff, but i get the error... how do i will over come this???
Any sugesstions...
|