On 23/02/2015 13:13, Robert Clove wrote:
Hi All,

I am using the Linux system with python, i am running the following script

#!/usr/bin/python



import threading

import time

import sys
import subprocess
import datetime
import os
import time
import logging



proc1=subprocess.Popen("/root/Desktop/abc.py","64","abc",shell=True,stdout=subprocess.PIPE,
stderr=subprocess.PIPE)


In this script i am calling the other script named abc.py which is
located on the desktop with 64 and abc as its arguments
I am getting the following error
File "/usr/lib64/python2.6/subprocess.py", line 589, in __init__
     raise TypeError("bufsize must be an integer")
TypeError: bufsize must be an integer


Can you tell me why and whats the sol?

Hi, the parameter list should be a list of strings, not several unpacked strings :

    command = ["/root/Desktop/abc.py","64","abc"]
proc1 = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

Also, be sure to use a shebang like "#!/usr/bin/env python" at the beginning of abc.py or your environment may be unable to find out that you want to execute that script with Python. Or better, you can call that script directly with Python :

    command = ["python","/root/Desktop/abc.py","64","abc"]


--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to