Reading From stdin After Command Line Redirection
Tim Daneliuk
tundra at tundraware.com
Wed Oct 23 20:09:36 EDT 2013
On 10/23/2013 05:20 PM, Ben Finney wrote:
> random832 at fastmail.us writes:
>
>> On Wed, Oct 23, 2013, at 16:52, Chris Angelico wrote:
>>> There are times when this is correct behaviour - like asking for
>>> passwords (SSH and sudo work like this).
>>
>> Less (or pagers generally, or an interactive text editor that allows
>> creating a file from standard input) would be another example of a
>> program where it makes sense to do this.
>
> You're both describing programs that read the console, which is not what
> the OP was asking for. The OP was asking about re-opening stdin after
> reaching EOF, which is incoherent as far as I understand it.
>
> I'm still waiting for the OP to clarify what they want to do.
>
'Easy there Rainman, the question is entirely coherent,
though it may not be achievable this way. The goal of the
exercise was:
- Read a file the user specifies via command line redirection
- When the file is fully read, return to reading keyboard
input with things like raw_input and get_pass which I believe
use stdin as a source ... probably to avoid having to manually
cope with ttys and ptys themselves. One of those two functions -
I don't recall which - was giving me a problem with stdin redirected.
In the end, I broke down and added a command line parameter to
specify which file to read in so that stdin would be unaffected.
Now that I think about it, as I recall from the prehistoric era of writing
lots of assembler and C, if you use shell redirection, stdin shows
up as a handle to the file and there is no way to retrieve/reset it
its default association with the tty/pty. Since python is layered on
top of this, I expect the same would be the case here as well.
--
----------------------------------------------------------------------------
Tim Daneliuk tundra at tundraware.com
PGP Key: http://www.tundraware.com/PGP/
More information about the Python-list
mailing list