set -euo pipefail
export LC_ALL=C
sed_work=$(mktemp -d "${TMPDIR:-/tmp}/sed-example.XXXXXX")
trap 'rm -rf -- "$sed_work"' EXIT
cd "$sed_work"
mkdir -p data
cat > data/first.txt <<'SED_INPUT_1'
one
two
SED_INPUT_1
cat > data/second.txt <<'SED_INPUT_2'
three
four
SED_INPUT_2

sed_gnu_binary=$(command -v gsed || command -v sed)
sed_gnu_version=$("$sed_gnu_binary" --version 2>/dev/null || :)
case "$sed_gnu_version" in
  *"GNU sed"*) ;;
  *) printf 'This example requires GNU sed.\n' >&2; exit 69 ;;
esac
gsed() { "$sed_gnu_binary" "$@"; }

gsed -sn '1p' data/first.txt data/second.txt
