-
Notifications
You must be signed in to change notification settings - Fork 1.8k
SC2242
Vidar Holen edited this page Nov 25, 2018
·
1 revision
exit "Bad filename"
echo "Bad filename" >&2
exit 1
exit
can only be used to signal success or failure (0 = success, 1-255 = failure). It can not be used to return string data, and it can not be used to print error messages.
String data should be written stdout, before an exit 0
to exit with success.
Errors should instead be written to stderr, with an exit 1
(or higher) to exit with failure:
if [ ! -f "$1" ]
then
echo "$1 is not a regular file" >&2
exit 1
fi
Note in particular that exit -1
is equivalent to exit 255
, but that exit 1
is the more canonical way of expressing the first possible error code.
None