mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-05 23:11:11 +02:00
33740: FAQ: another way of avoiding MULTIOs effects on pipes
This commit is contained in:
parent
02bca2ea0f
commit
ff292af95f
3 changed files with 16 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2014-11-23 Peter Stephenson <p.w.stephenson@ntlworld.com>
|
||||
|
||||
* 33740: Stephane: Etc/FAQ.yo: Another way of avoiding MULTIO
|
||||
effects on pipes.
|
||||
|
||||
2014-11-22 Barton E. Schaefer <schaefer@zsh.org>
|
||||
|
||||
* 33763 (cf. Baptiste Daroussin 33747): Doc/Zsh/mod_system.yo:
|
||||
|
|
|
@ -1061,6 +1061,9 @@ for arrays which keep only the first occurrence of duplicated values
|
|||
item(tt(hide))(
|
||||
for parameters with the `hide' flag
|
||||
)
|
||||
item(tt(hideval))(
|
||||
for parameters with the `hideval' flag
|
||||
)
|
||||
item(tt(special))(
|
||||
for special parameters defined by the shell
|
||||
)
|
||||
|
|
|
@ -1784,7 +1784,14 @@ sect(Why is my output duplicated with `tt(foo 2>&1 >foo.out | bar)'?)
|
|||
to both files when the redirector appears twice. What's going on in the
|
||||
first example is exactly the same, however the second redirector is
|
||||
disguised as a pipe. So if you want to turn this effect off, you need
|
||||
to unset the option mytt(MULTIOS).
|
||||
to unset the option mytt(MULTIOS), or alternatively write the following:
|
||||
verb(
|
||||
% { print output; print error >&2 } 2>&1 >&- >foo.out | sed 's/error/erratic/'
|
||||
erratic
|
||||
)
|
||||
By closing stdout with tt(>&-), we're cancelling the previous redirections
|
||||
(to the pipe) and start anew with tt(>foo.out) instead of adding it as a
|
||||
redirection target to stdout.
|
||||
|
||||
|
||||
sect(What are these `^' and `~' pattern characters, anyway?)
|
||||
|
|
Loading…
Reference in a new issue