#!/bin/sh # Written by friedman@prep.ai.mit.edu # Last modified: 1994-11-07 # Requires relatively new versions of GNU date, ls, and sed (ie after 1992) # Public domain. # Needed to make GNU `date' print the date using EST, not GMT. TZ=EST5EDT PATH="/usr/local/gnubin:/usr/local/bin:$PATH" export TZ PATH prog=`echo "$0" | sed -e 's/[^\/]*\///g'` for file in ${1+"$@"}; do fdate=`ls -ld "$file" \ | sed -ne 's/[ ][ ]*/ /g s/\([^ ]* \)\{5\}// s/ [^ ]*$// /:/!s/\( [^ ]*$\)/,\1/ p'` fmtdate=`date '+%d %B %Y' -d "$fdate"` lastupdate=`sed -ne '/^@set lastupdate /{ = s/@set lastupdate //p q }' "$file"` set fnord $lastupdate shift case $# in 0 ) lineno= lastupdate= ;; * ) lineno=$1 shift lastupdate="$*" ;; esac { case "$lastupdate" in "$fmtdate" ) : ;; '' ) echo "$prog: $file: warning: file does not mention any update time." ;; * ) echo "$prog: $file:$lineno: warning: file last updated $fmtdate, but claims it was last updated $lastupdate." ;; esac } 1>&2 done # eof