On 1/18/16 8:14 AM, Greg Wooledge wrote:
> On Sat, Jan 16, 2016 at 02:28:27PM -0500, Adam Danischewski wrote:
>> If it is expected behavior I didn't see it in the documents.
>
> I suspect the interpretation of -d '' to mean a NUL byte delimiter
> may have been an accident originally (but that's a guess).
I guess that depends on what you mean by `accident'. There's nothing
special in the code that checks for NUL; it's just another delimiter
and another value returned by read(2). There's no reason it should
not just work.
> But it's
> an incredibly useful feature, and has been used in countless real
> life scripts. At this point, while it is still undocumented, it is
> nevertheless a feature whose omission would be considered a regression.
It's not a special case that needs to be documented as such. It's a
straightforward application of the rules for assigning the delimiter
and reading it. You do have to understand how C strings work and how
they are used when passing arguments to commands for it to make sense.
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU [email protected] http://cnswww.cns.cwru.edu/~chet/