[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] tee: Add -q, --quiet option to not write to stdout
From: |
Alejandro Colomar (man-pages) |
Subject: |
Re: [PATCH] tee: Add -q, --quiet option to not write to stdout |
Date: |
Thu, 21 Jan 2021 16:48:25 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1 |
On 1/21/21 4:11 PM, Pádraig Brady wrote:
On 21/01/2021 13:17, Alejandro Colomar wrote:
This is useful for using tee to just write to a file,
at the end of a pipeline,
without having to redirect to /dev/null
Example:
echo 'foo' | sudo tee -q /etc/foo;
is equivalent to the old (and ugly)
echo 'foo' | sudo tee /etc/foo >/dev/null;
This was discussed last month:
https://lists.gnu.org/archive/html/coreutils/2020-12/msg00037.html
thanks,
Pádraig
Hi all,
I'd like to continue the discussion you had in that thread:
The task we are trying to improve is:
writing stdin to a file (either truncating(overwriting) or appending).
Commonly used tools:
cat, tee, dd
- cat, as Padraig pointer out doesn't have an option to append.
- dd doesn't either (AFAIK).
- dd is quite dangerous, and I would avoid it for simple tasks.
- I read on stackexchange (I couldn't find the thread now)
that the dd performance was lower, but I don't remember well.
- 'sh -c "exec cat > file" is even uglier than 'tee file >/dev/null'
tee is the only tool that already has the options ('-a') to precisely
write into a file the way you want. cat can do the same with proper
redirection from the shell (>> / >), but I'd argue against having two
completely different expressions for doing exactly the same thing,
depending on if you need sudo or not:
cat > file; -> sudo dd of=file status=none;
cat >[>] file; -> sudo sh -c "exec cat >[>] file";
cat >[>] file; -> sudo tee [-a] file >/dev/null;
tee [-a] file >/dev/null; -> sudo tee [-a] file >/dev/null;
tee -q[a] file; -> sudo tee -q[a] file;
I've sorted them from worst to best IMO.
Don't you think its quite natural to do use tee everywhere?
BTW, what a coincidence that you discussed this a month ago! :-)
Cheers,
Alex
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
- [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar, 2021/01/21
- Fwd: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar (mailing lists), 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Christian Groessler, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Pádraig Brady, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout,
Alejandro Colomar (man-pages) <=
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Bernhard Voelker, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar (man-pages), 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Christian Groessler, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar (man-pages), 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Erik Auerswald, 2021/01/22
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alex Henrie, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Bernhard Voelker, 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar (man-pages), 2021/01/21
- Re: [PATCH] tee: Add -q, --quiet option to not write to stdout, Alejandro Colomar (man-pages), 2021/01/21
- [PATCH v2] tee: Add -q, --quiet, --silent option to not write to stdout, Alejandro Colomar, 2021/01/21