On Sat, May 18, 2024, 04:54 Zachary Santer <zsan...@gmail.com> wrote:

> Was «difference between read -u fd and read <&"$fd"» on help-b...@gnu.org
>
> On Thu, May 16, 2024 at 12:51 AM Kerin Millar <k...@plushkava.net> wrote:
> >
> > On Thu, 16 May 2024, at 3:25 AM, Peng Yu wrote:
> > > Hi,
> > >
> > > It appears to me that read -u fd and read <&"$fd" achieve the same
> > > result. But I may miss corner cases when they may be different.
> > >
> > > Is it true that they are exactly the same?
> >
> > They are not exactly the same. To write read -u fd is to instruct the
> read builtin to read directly from the specified file descriptor. To write
> read <&"$fd" entails one invocation of the dup2 syscall to duplicate the
> specified file descriptor to file descriptor #0 and another invocation to
> restore it once read has concluded. That's measurably slower where looping
> over read.
>
> So here's another tangent, but has it been considered to add an option
> to the printf builtin to print to a given file descriptor, rather than
> stdout? If printing to a number of different file descriptors in
> succession, such an option would appear to have all the same benefits
> as read's -u option.
>

id like a printf -u

Zack
>
>

Reply via email to