./chkf: line 30: syntax error near unexpected token `elif\' \'/chkf: line 30: `elif [ -f \"$object\" ] ; then if [ -d \"$object\" ] ; then message=\"$message a
it looks like you've got the "dos problem", embedded control-M's in your file. fix it with sed:
sed -i 's/\r//' chkf