1.7.5: Bug with bash read in /etc/profile.d invocation

Steven Collins spc.for.nbc@gmail.com
Tue May 18 20:38:00 GMT 2010


Look at /etc/profile where it runs the profile.d scripts.

The scripts are run with standard input redirected to a here document
generated by a find command. That is the source of the
"/etc/profile.d/xinit.sh" you're seeing as the answer. The "read"
statement in your script is actually consuming one of the arguments
intended to be processed by the "read" in /etc/profile.

Because the scripts are sourced by the current shell your "#!" line
has no affect ("-x" isn't getting set.)

In other words, the shell is doing exactly what it has been told to
do. Don't use a read in your profile.d scripts unless you make sure to
reroute standard input back to the terminal.

On Thu, May 13, 2010 at 07:16, Garber, Dave (GE Infra, Energy, Non-GE) <> wrote:
> #!/usr/bin/bash -x
>        echo In p.sh
>        read -p "How are you today? " Ans
>        echo Ans is $Ans

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list