Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Mar 2021 15:11:45 -0000 (UTC)
From:      Christian Weisgerber <naddy@mips.inka.de>
To:        freebsd-questions@freebsd.org
Subject:   Re: sed -i empty argument compatibility issue
Message-ID:  <slrns4f41h.2n79.naddy@lorvorc.mips.inka.de>
References:  <9178f6c5-631a-c2c2-c6b1-8def94a3397b@dreamchaser.org> <20210305142352297368817@bob.proulx.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-03-05, Bob Proulx <bob@proulx.com> wrote:

> 4. Introduce a "sed" wrapper in PATH that intercepts the call to the
> real sed, detects this problematic usage case, and then DTRT does the
> right thing with it.

To save a lot of patching for the regression tests in the devel/got
port, I added this shell function:

# compat wrapper
sed()
(
        for i; do
                arg=$1
                shift
                case $arg in
                -i)     set - "$@" "$arg" '' ;;
                *)      set - "$@" "$arg" ;;
                esac
        done
        exec sed "$@"
)

No, it doesn't handle all cases, but it is good enough in that context.
ports/devel/got/files/patch-regress_cmdline_common.sh

-- 
Christian "naddy" Weisgerber                          naddy@mips.inka.de



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?slrns4f41h.2n79.naddy>