On Jan 28, 2008 12:35 AM, Greg Ewing <[EMAIL PROTECTED]> wrote:
> Isaac Morland wrote:
>
> > What about an option (maybe even a default) to send the prompt to stdin?
> >
> > The Postgres command line interface psql appears to do this:
> >
> > $ psql 2>&1 >/dev/null
> > Password:
> > $
>
> No, it's probably using the C stdlib routine getpass(). From the man
> page:
>
>       The getpass() function displays a prompt to, and reads in a password
>       from, /dev/tty.  If this file is not accessible, getpass() displays the
>       prompt on the standard error output and reads from the standard input.
>
> So it appears that the official Unix Way prefers using stderr
> over stdout for prompting, if using the std files for it at all.

That's a dangerous generalization from just one example. I'd prefer it
if you could unearth some POSIX or Linux base document saying this.

> Writing to stdin would be wrong, since it's usually read-only, even
> when connected to a terminal.

Nowadays, it often is writable I've found, but we still shouldn't assume that.

-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to