Improve some sgit error messages

If no sed command given (the first check on command line) say that at
least one sed command and one glob must be specified. This way they can
see that both are needed to help prevent the situation where one first
specifies no sed command and then after fixing that provides no glob. I
felt that it is not necessary to show this when there is no glob because
the check for sed commands comes first.

Add error message for unexpected value from getopts.
This commit is contained in:
Cody Boone Ferguson committed 2023-09-25 05:39:30 -07:00
1 parent 975c5f26fc
commit 6a0593981e
2 files changed
+7 -4

No files matched your search

+1 -1
View File
@@ -70,7 +70,7 @@ usage: sgit [-h] [-V] [-v level] [-x] [-I] [-i extension] [-o sed_option(s)] [-s
-s sed set path to sed
-e command append sed command to list of commands to execute on globs
sgit version: 0.0.9-1 24-04-2023
sgit version: 0.0.10-1 24-04-2023
```
You **MUST** specify at least one `sed` command and one glob: the sed command by
+6 -3
View File
@@ -21,7 +21,7 @@
# - Cody Boone Ferguson (@xexyl)
#
export SGIT_VERSION="0.0.9-1 24-04-2023" # format: major.minor.patch-release DD-MM-YYYY
export SGIT_VERSION="0.0.10-1 24-04-2023" # format: major.minor.patch-release DD-MM-YYYY
USAGE="usage: $(basename "$0") [-h] [-V] [-v level] [-x] [-I] [-i extension] [-o sed_option(s)] [-s sed] [-e command] <glob...>
@@ -93,7 +93,10 @@ while getopts :hVv:xIi:o:s:e: flag; do
echo "$USAGE" 1>&2
exit 3
;;
*)
*) echo "$0: ERROR: unexpected value from getopts: $flag" 1>&2
echo 1>&2
echo "$USAGE" 1>&2
exit 3
;;
esac
done
@@ -104,7 +107,7 @@ shift $(( OPTIND - 1 ));
# check that SED_COMMANDS is not empty!
if [[ -z "${SED_COMMANDS[*]}" ]]; then
echo "$(basename "$0"): ERROR: you must specify at least one sed command" 1>&2
echo "$(basename "$0"): ERROR: you must specify at least one sed command and one glob" 1>&2
echo 1>&2
echo "$USAGE" 1>&2
exit 2