[EMAIL PROTECTED] writes: > ===== > > #!/bin/bash > > error () { > > echo -e "\n\terror: ${*}\n" > exit;
Replace that with "exit 1". You can use any other non-zero exit code. > # kill $$ > > } > > check_file () { > > input="$*" > > if [ -e $input ]; then This will fail if the argument contains a space. You need to properly quote the variable, as you did below. > echo "$input" > else > error "invalid directory: $input" > fi > > } > > > chkFile="`check_file $1`" Replace that with chkFile=`check_file "$1"` || exit Andreas. -- Andreas Schwab, SuSE Labs, [EMAIL PROTECTED] SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."