LDP/LDP/guide/docbook/abs-guide/ex65.sh

29 lines
681 B
Bash

#!/bin/bash
# delete.sh, a not-so-cunning file deletion utility.
# Usage: delete filename
E_BADARGS=85
if [ -z "$1" ]
then
echo "Usage: `basename $0` filename"
exit $E_BADARGS # No arg? Bail out.
else
file=$1 # Set filename.
fi
[ ! -f "$file" ] && echo "File \"$file\" not found. \
Cowardly refusing to delete a nonexistent file."
# AND LIST, to give error message if file not present.
# Note echo message continuing on to a second line after an escape.
[ ! -f "$file" ] || (rm -f $file; echo "File \"$file\" deleted.")
# OR LIST, to delete file if present.
# Note logic inversion above.
# AND LIST executes on true, OR LIST on false.
exit $?