Date: Fri, 22 Nov 2002 18:22:22 +0900 (JST) From: Hideo Kogoe <Hideo.Kogoe@Sun.COM> To: FreeBSD-gnats-submit@FreeBSD.org Cc: Hideo Kogoe <Hideo.Kogoe@Sun.COM> Subject: bin/45584: read builtin function of sh does not read standard input Message-ID: <200211220922.gAM9MMcw095649@vaio.Japan.Sun.COM>
next in thread | raw e-mail | index | archive | help
>Number: 45584 >Category: bin >Synopsis: read builtin function of sh does not read standard input >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Nov 22 01:30:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Hideo Kogoe >Release: FreeBSD 4.7-RELEASE i386 >Organization: Sun Microsystems K.K. >Environment: System: FreeBSD vaio.Japan.Sun.COM 4.7-RELEASE FreeBSD 4.7-RELEASE #0: Mon Nov 18 14:46:18 JST 2002 root@vaio.Japan.Sun.COM:/usr/src/sys/compile/VAIO i386 SONY VAIO PCG-R505R/GK running a customer kernel >Description: The read builtin function of /bin/sh does not read the standard input correctly. Refer to the How-To-Repeat section. >How-To-Repeat: $ echo Hello | read line; echo $line $ echo Hello | while read line; do echo $line; done Hello $ Just for reference, on Solaris, for example, $ echo Hello | read line; echo $line Hello $ echo Hello | while read line; do echo $line; done Hello $ Accroding to the specification of POSIX shell, the read function doesn't behave correctly. >Fix: Putting them into a sub-shell seems to work fine. $ echo Hello | (read line; echo $line) Hello $ >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211220922.gAM9MMcw095649>