On 11/23/11 9:03 AM, Matthew Story wrote:
> Bash Version: GNU bash, version 4.1.7(1)-release (amd64-portbld-freebsd8.0)
> OS: FreeBSD 8.0
> Hardware: amd64
> Environment: jail
> Description: read terminates reading all records at first null-byte ( chr(0)
> ) in a stream, null-bytes are valid ascii characters and should not cause
> read to stop reading
> a line this behavior is not reproducible using bourne shell.
Bash doesn't stop reading at the NUL; it reads it and the rest of the line
up to a newline. Since bash treats the line read as a C string, the NUL
terminates the value assigned to `foo'. Bash doesn't drop NULs like the
FreeBSD (not the Bourne) shell.
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/