From df248206c442f6fbf96ae15b467a05b234fd66f6 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Thu, 9 May 2024 15:56:27 -0300 Subject: clock, minutes, round, statusf: Add working utilities --- src/clock | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 src/clock (limited to 'src/clock') diff --git a/src/clock b/src/clock new file mode 100755 index 0000000..250c028 --- /dev/null +++ b/src/clock @@ -0,0 +1,33 @@ +#!/bin/sh +set -eu + +usage() { + cat <<-'EOF' + Usage: + clock [-o FILE] [--] CMD... + EOF +} + +OUTPUT=/dev/stdout +while getopts 'o:' flag; do + case "$flag" in + (o) + OUTPUT="$OPTARG" + ;; + (*) + usage >&2 + exit 2 + ;; + esac +done +shift $((OPTIND - 1)) + + +STATUS_F="$(mkstemp)" +trap 'rm -f "$STATUS_F"' EXIT + +START="$(now -E)" +statusf "$STATUS_F" "$@" +END="$(now -E)" +printf '%s %s' "$END" "$START" | awk '{ printf "%f\n", $1 - $2 }' > "$OUTPUT" +exit "$(cat "$STATUS_F")" -- cgit v1.2.3