From 6fe3c4bb709da54c1529fc56f5005462990617f2 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Wed, 8 May 2024 06:39:31 -0300 Subject: src/assert-arg: Add working utility --- deps.mk | 1 + src/assert-arg | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100755 src/assert-arg diff --git a/deps.mk b/deps.mk index fbae84d..b88fd94 100644 --- a/deps.mk +++ b/deps.mk @@ -1,4 +1,5 @@ sources.sh = \ + src/assert-arg \ src/now \ src/timestamp \ src/uuid \ diff --git a/src/assert-arg b/src/assert-arg new file mode 100755 index 0000000..8eaaea8 --- /dev/null +++ b/src/assert-arg @@ -0,0 +1,30 @@ +#!/bin/sh +set -eu + +usage() { + cat <<-'EOF' + Usage: + assert-arg [--] STRING MESSAGE + EOF +} + + +if [ "${1:-}" = '--' ]; then + shift +fi + +if [ $# -ne 2 ]; then + usage >&2 + exit 2 +fi + +STRING="$1" +MESSAGE="$2" + +if [ -z "$STRING" ]; then + printf 'Missing %s.\n\n' "$MESSAGE" >&2 + cat <<-'EOF' + usage >&2 + exit 2 + EOF +fi -- cgit v1.2.3