Returning Values from Bash Scripts

Mike Meyer mwm at mired.org
Sun Jan 8 15:39:01 EST 2006


Jorgen Grahn <grahn+nntp at snipabacken.dyndns.org> writes:
> On Sun, 08 Jan 2006 08:57:01 GMT, Tim Roberts <timr at probo.com> wrote:
>> chakkaradeepcc at gmail.com wrote:
>>>How to execute bash scripts from python (other than using os.popen) and
>>>get the values that those bash scripts return.
>> Why would you eliminate os.popen?  It is precisely the right way to do
>> this.  That's the same interface bash itself uses to execute scripts.
>> That is, assuming by "values" you mean the stdout from the script.  If you
>> really mean the numerical return code, you can use os.system.
> And that's just one "value", of course. And not a very useful one, either --
> it's a non-negative integer, with a pretty low max value -- 255 on my
> machine. Unless you count the crash return codes.

Further, os.system (and os.popen) pass the command through a shell,
and actually gives you the return value from the shell instead of the
command in question. Normally, these are the same thing. But if the
shell fails to execute the command, they aren't - and there's no easy
way to tell that that's what happened.

    <mike
-- 
Mike Meyer <mwm at mired.org>			http://www.mired.org/home/mwm/
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.



More information about the Python-list mailing list