KeyBoard interrupt and Redirection operator
Gary Herron
gherron at islandtraining.com
Tue Sep 15 15:00:42 EDT 2009
aditya shukla wrote:
> Hello Guys,
>
> I have a program which i use like this scraps.py arg1 arg2 > filename.
> I am using the redirection operator to direct the output to the
> filename .The scenario here is that I want to print a message as long
> as the program is running and as generate an error message and exit as
> I use a keyboard interrupt.I am able to do this by using a try except
> clause but the issue is that everything is written to the file as i am
> using the redirection operator .Is there a way to write the running
> program message and the terminate program mesage to the console
> without writing it to the file.
>
>
>
> Thanks
>
> Aditya
>
>
>
There are two output streams usually available to such a program.
stdout: Where print's output goes, and is affected by the redirect
operator.
stderr: Output to this stream is not (normally) affected by the
redirect operator.
So
print stuff
or
print>>sys.stdout, stuff
will go to the redirected file
and
print>>sys.stderr, stuff
will not be redirected.
That answers you specific question, but note that various shells *do*
provide (other) ways to redirect both stdout and stderr, but for a
discussion on that, you will have to tell us what shell, and indeed what
OS you are using.
Gary Herron
More information about the Python-list
mailing list