#!/bin/sh dir="/bin /sbin /lib /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin /etc" md5file="/root/md5file" if [ $# -eq 1 -a x"$1" = x"create" ] ; then cat /dev/null > $md5file for i in $dir; do find $i -type f | xargs md5sum >> $md5file done exit 0; fi for i in $dir ; do find $i -type f | awk -v md5file="$md5file" 'BEGIN { while ( getline < md5file) { array[$1] = $2 }} { file=$1; comb="/usr/bin/md5sum " file; comb | getline ; if (array[$1] == "") print $2 " has changed"; close(comb);}' done