[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 (resend)] tee: Add -q, --quiet, --silent option to not wri
From: |
Alex Henrie |
Subject: |
Re: [PATCH v3 (resend)] tee: Add -q, --quiet, --silent option to not write to stdout |
Date: |
Mon, 15 Mar 2021 14:20:40 -0600 |
On Mon, Mar 15, 2021 at 11:42 AM Alex Henrie <alexhenrie24@gmail.com> wrote:
>
> On Sun, Mar 14, 2021 at 3:44 AM Alejandro Colomar (man-pages)
> <alx.manpages@gmail.com> wrote:
> >
> > On 1/25/21 5:03 AM, Bernhard Voelker wrote:
> > > OTOH I understand that there's a little gap in the tool landscape.
> > > Astonishingly, there doesn't seem to exist a trivial tool to redirect
> > > from standard input (or any other input file descriptor) to a file.
> > > I wrote such a little tool in the attached:
> > >
> > > $ src/sink --help
> > > Usage: src/sink [OPTION]... FILE
> > > Copy input stream to FILE.
> > >
> > > Mandatory arguments to long options are mandatory for short options
> > > too.
> > >
> > > -a, --append append to the given FILE, do not overwrite
> > > -c, --create ensure to create FILE, error if exists
> > > -i, --input-stream=FD read from stream FD instead of standard
> > > input
> > >
> > > The default input stream number FD is 0, representing the standard
> > > input.
> > >
> > > This allows not only to copy data from standard input, but from any
> > > file descriptor open for reading. It also allows control over
> > > how the output file will be opened (e.g. with O_CREAT|E_EXCL).
> > >
> > > The OPs case would look like:
> > >
> > > echo 'foo' | sudo sink /etc/foo
> > > or
> > > echo 'foo' | sudo sink -a /etc/foo # append.
> > > or
> > > echo 'foo' | sudo sink -c /etc/foo # ensure creation of the file.
> > >
> > > I'm not sure if this will ever be considered for inclusion -
> > > I just did it "for fun". ;-)
> > >
> > > Have a nice day,
> > > Berny
> > >
> >
> > By chance, I just found out that there is a tool very similar to 'sink'
> > in moreutils [1]. It's called 'sponge'.
> >
> > [1]: <https://joeyh.name/code/moreutils/>
> >
> > So this feature already exists, and therefore I drop my patches.
> >
> > Cheers,
> >
> > Alex
>
> Interesting, thanks for sharing. There's still no `sponge -q` option
> though--it always writes either to a file or to standard output.
>
> -Alex
Actually, it looks like `pee` (also from moreutils) can be used for
throwing input into the void. So between `sponge` and `pee`, I think
all the use cases are covered!
-Alex