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
--
http://mail.python.org/mailman/listinfo/python-list