首页>比特动态>python脚本中调用shell命令
python脚本中调用shell命令

    在python脚本中调用类uninx上的系统命令或工具。有下面两种方法


    os.system(string cmd | scriptname.sh)


    参数可以是shell命令,也可以是shell脚本。


    可用于在远程类unix上执行shell 命令,如在android底层命令行上执行。该操作将输出打印到标准输出中,这也意味着无法用变量去接收命令执行结果,只返回脚本退出时的状态码,如


python脚本中调用shell命令


    >>>a=os.system("uname -a")


    Linuxlocalhost.localdomain 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 11:36:42 UTC 2015x86_64 x86_64 x86_64 GNU/Linux


    >>>a


    0


    os.popen(string cmd | scriptname.sh)


    返回一个文件对象,要得到命令的输出内容,只需再调用下read()或readlines()方法。


    [NSOS1.1 ~]# python


    Python2.4.3 (#1, Dec 10 2010, 17:24:35)


    [GCC4.1.2 20080704 (Red Hat 4.1.2-50)] on linux2


    Type "help","copyright", "credits" or "license" for moreinformation.


    >>> import os


    >>> b=os.popen("cat/usr/local/liveupdate/version").readlines(); #按行读取,返回列表


    >>> b


    ['#Local version information,SHOULD NOT be modified.\n', 'Product_name=Traffic Control\n','Current_Version=5.0\n', 'Last_Patch_SN=1\n', 'DB_Patch_SN=0\n','Last_Build_SN=0\n', 'Last_Hotfix_SN=0\n', 'Type=tc\n']


    >>> b[1]


    'Product_name=Traffic Control\n'


    >>>type(b)


    >>>