Unable to redirect the subprocess CMD.exe to txt file. Please help !!!
William Ray Wing
wrw at mac.com
Tue Sep 3 10:22:22 EDT 2013
On Sep 3, 2013, at 9:54 AM, Venkatesh <venkatesh.totad at gmail.com> wrote:
> Hello comp.lang.python Group,
>
> I am trying to invoke a subprocess in Python as below
>
> import sys
> import time
> import os
> import subprocess
> DETACHED_PROCESS = 0x00000008
>
> path = r'C:\Windows\System32\cmd.exe /k ping www.google.com -n 4 >> temp.txt'
> p = subprocess.Popen("%s"%(path), stdout = subprocess.PIPE, stderr = subprocess.STDOUT, creationflags=DETACHED_PROCESS)
>
> With this code, unable to invoke the subprocess and hence not able to store the Ping statistics in the file.
>
> Any help on this OR any better way of achieving this??
>
>
> --
> https://mail.python.org/mailman/listinfo/python-list
I use the following in OS-X, should be very similar in Windows.
import subprocess
ping_result = subprocess.Popen(['ping', '-c1', '-t1', self.target_IP], stderr=subprocess.PIPE, stdout = subprocess.PIPE).communicate()[0]
self.target_IP is a string containing the IP address, which is defined elsewhere.
ping_result contains the complete returned string from the ping command. Note the -c switch (count = 1 ping packet) and the -t switch (force exit after one second).
you will have to parse the returned string to extract the stats.
-Bill
More information about the Python-list
mailing list