From 66e72411a4d249187edde51ee1c99cc992c49d82 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Fri, 10 Apr 2026 21:09:05 -0300 Subject: bin/plop: Add new working utility --- bin/plop | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100755 bin/plop (limited to 'bin') diff --git a/bin/plop b/bin/plop new file mode 100755 index 0000000..33a1b05 --- /dev/null +++ b/bin/plop @@ -0,0 +1,39 @@ +#!/bin/sh +set -euo pipefail + +usage() { + cat <<-'EOF' + Usage: + plop [-m MODE] FILE + EOF +} + +MODE= +while getopts 'm:' flag; do + case "$flag" in + (m) + MODE="$OPTARG" + ;; + (*) + usage >&2 + exit 2 + ;; + esac +done +shift $((OPTIND - 1)) + + +FILE="${1:-}" + +eval "$(assert-arg -- "$FILE" 'FILE')" + + + +tmp="${FILE}.plop.$$" +trap "rm -f '$tmp'" EXIT + +cat > "$tmp" +if [ -n "$MODE" ]; then + chmod "$MODE" "$tmp" +fi +mv "$tmp" "$FILE" -- cgit v1.2.3