Como mencionei no comentário acima, você está perdendo um fi
para seu if
:
$ type getname
getname is aliased to 'read filename'
$ type vfile
vfile is aliased to 'getname; if [ ! -f $filename ]; then echo "Irregular file"; fi'
Então:
$ vfile
doesNotExist
Irregular file
$ vfile
/etc/passwd
$