On Sat, 07 Jan 2006 22:03:36 -0500, Mike Meyer wrote:

> [EMAIL PROTECTED] writes:
> 
>> How to execute bash scripts from python (other than using os.popen) and
>> get the values that those bash scripts return.
> 
> The easy way is to call it with subprocess.call.


>>> import subprocess
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ImportError: No module named subprocess


It might be easy, but an awful lot of people won't be using a version of
Python that has the subprocess module, and for them upgrading may not be
easy (or even possible) at all.

For those that don't have access to subprocess, there is an embarrassment
of riches available. You can do this:

>>> result = os.system('ls')
file.py  file.txt
>>> result
0

If you want to capture the result of the command, you can try this:

>>> output = os.popen('ls -l').read()

Perhaps the simplest way if subprocess is not available to you is the
commands module. Other possibilities are os.fork, os.execv and the popen2
module. There may be other solutions as well.



-- 
Steven.

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

Reply via email to