diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2022-01-06 20:11:05 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2022-01-06 20:11:05 +0300 |
commit | 47c8a75f97f21ae6cffa61e61e62000642f82ab7 (patch) | |
tree | 131e96ec73828e5b9773248faea8858ae1aec7cf | |
parent | db.sh: consistent logging (diff) | |
download | config-links-47c8a75f97f21ae6cffa61e61e62000642f82ab7.tar.gz config-links-47c8a75f97f21ae6cffa61e61e62000642f82ab7.zip |
db.sh: add parse_mode function
-rwxr-xr-x | links-chmod | 2 | ||||
-rwxr-xr-x | links-update | 6 | ||||
-rw-r--r-- | src/db.sh | 17 |
3 files changed, 21 insertions, 4 deletions
diff --git a/links-chmod b/links-chmod index 9c7a427..8eb8849 100755 --- a/links-chmod +++ b/links-chmod @@ -79,7 +79,7 @@ parse_script_options() { update_shared_dir "$value" ;; -m|--mode) - mode="$value" + mode="$( parse_mode "$value" )" ;; *) script_usage "unrecognized parameter: $key" >&2 diff --git a/links-update b/links-update index 1e1c829..6a802bc 100755 --- a/links-update +++ b/links-update @@ -32,8 +32,6 @@ readonly script_dir src_dir="$( cd -- "$script_dir/src" && pwd )" readonly src_dir -mode='' - . "$src_dir/common.sh" . "$src_dir/os.sh" . "$src_dir/path.sh" @@ -93,7 +91,7 @@ parse_script_options() { update_shared_dir "$value" ;; -m|--mode) - mode="$value" + mode="$( parse_mode "$value" )" ;; *) script_usage "unrecognized parameter: $key" >&2 @@ -103,6 +101,8 @@ parse_script_options() { done } +mode='' + main() { parse_script_options "$@" check_symlinks_enabled @@ -263,6 +263,23 @@ unlink_obsolete_entries() { done } +parse_mode() { + if [ "$#" -ne 1 ]; then + echo "usage: ${FUNCNAME[0]} MODE" >&2 + return 1 + fi + + local mode="$1" + shift + + if [ -z "$mode" ]; then + dump "mode cannot be empty" >&2 + return 1 + fi + + echo "$mode" +} + chmod_entries() { if [ "$#" -ne 1 ]; then echo "usage: ${FUNCNAME[0]} MODE" >&2 |