os.system questions

Amit Khemka khemkaamit at gmail.com
Sat Mar 31 08:51:45 EDT 2007


On 3/31/07, Eric Price <soyouthinkimgonnalikethis at hotmail.com> wrote:
> Hi;
> I have a couple bugs to work out in the below script; namely, I don't know
> how to capture the result of an os.system command, nor am I convinced that
> the call to os.system actually results in the execution of the command. Here
> is the script:
>
> #!/usr/local/bin/python
> import re, os
>
> def freshReboot():
>         up = os.system("uptime")
>         if re.search('day|hour', up):
>                 pass
>         else:
>                 first = up
>                 tup = re.split('min', up)
>                 first = tup[0]
>                 n = len(first)
>                 char = first[n-3:n-2]
>                 if re.match(' ', char):
>                         os.system("/usr/local/etc/rc.d/zz_mysql_starter_script.sh")
>
>
> Here are my problems:
>
> up = os.system("uptime")
> How do I assign the output of "uptime" to the variable "up"?
>
> os.system("/usr/local/etc/rc.d/zz_mysql_starter_script.sh")
> When I substitute a test variable for "up", I don't get this script to
> actually run. Everything else is tested and works. Why won't this script
> run?

os.system doesn't allow you to get the output of the program, use
os.popen instead.
example:
import os
up = os.popen('uptime').readlines()

Cheers,

-- 
----
Amit Khemka -- onyomo.com
Home Page: www.cse.iitd.ernet.in/~csd00377
Endless the world's turn, endless the sun's Spinning, Endless the quest;
I turn again, back to my own beginning, And here, find rest.



More information about the Python-list mailing list