The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Advanced & Expert Users
.
google unix.com




View Single Post in the UNIX and Linux Forums - Click on the Thread or Permalink to View Entire Thread -->
  #4 (permalink)  
Old 02-08-2007
jim mcnamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Location: NM
Posts: 5,807

Code:
#/bin/ksh
# get the base real files
find /path/to/realfiles -name '*' -type f | \
while read file
do
      wc -c "$file"  | read size dummy
      echo "`basename $file` $size"
done > realfiles
# get all the shadow files
find / -type ! -name '/path/to/realfiles/*' |\
while read file
do
       wc -c "$file"  | read size dummy
       echo "`basename $file` $size  $file"
done > shadowfiles

# create a file badfiles that is a list of all the failures
awk '{
        FILENAME=="realfiles" {
                key[$1 $2]++
        }
        FILENAME=="shadowfiles" {
                if( !key[$1 $2]) { print $3 }
        }
      }'   realfiles shadowfiles > badfiles
# send email
cat badfiles | /usr/bin/mailx -s 'bad shadow files' somebody@someplace.com

Start with this code. Before you try mailing anything check both shadowfiles and realfiles and badfiles for content.