Solution to a problem,write terminal output to file

Robert Clove cloverobert at gmail.com
Wed Dec 10 05:22:39 EST 2014


I think i didn't explained well
Two programs client and server in c.
to run client strace -c ./client
to run server strace -c ./server

After a minute i want to send client SIGINT signal and capture the terminal
output in a file.

If i use os.system and press ctrl+c signal from keyboard i get the output
on terminal if i use subprocess.Popen and press ctrl+c from keyboard i
didn't get the output.

Regards


On Wed, Dec 10, 2014 at 12:51 AM, Chris Angelico <rosuav at gmail.com> wrote:

> On Wed, Dec 10, 2014 at 4:11 AM, Robert Clove <cloverobert at gmail.com>
> wrote:
> > I am facing a problem in python coding that is
> >
> > I have a client server program(programs a re in c code and client and
> server
> > are its executable) on Linux machine.
> > To run client i do this ./strace -c client and to run server i type this
> > ./strace -c server
> >
> > When i give ctrl+c to client i see some output on the terminal, i want
> that
> > output in the file i mean i want to send the ctrl+c signal programmatic
> ally
> > to client after a minute and write the output in the file.
> >
> > if i use subprocess.Popen to execute  ./strace -c client and give ctrl+c
> > signal i don''t see any output on the terminal but if i see os.system to
> > execute ./strace -c client i see the output on terminal.Now i want to
> send
> > the ctrl+c signal to os.system and write the terminal output into a file.
>
> I'm not entirely sure what you're trying to do here, but strace
> produces its output on Standard Error (aka "stderr"). You can simply
> redirect that to a file. That's the normal strace program. You might
> be running something completely different, since you're running
> "./strace"; but I would suggest that it probably uses either stderr or
> stdout ("Standard Output"), and you could redirect either or both. Try
> this, at the terminal (no Python involved):
>
> ./strace -c client >client_out 2>client_err
>
> Then press Ctrl-C, and see which of the files has the output. Based on
> that, you could configure subprocess.Popen to send the appropriate
> stream to a file.
>
> ChrisA
> --
> https://mail.python.org/mailman/listinfo/python-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20141210/352ccc1a/attachment.html>


More information about the Python-list mailing list