ShellPy 是一款Python和Shell的交互工具。一般来说,我们会通过Subprocess、Popen或者Command模块执行一条Shell命令或脚本,然后通过返回的标准输出和错误输出来得到结果,这个可行但不直观。ShellPy直观的解决了这一问题。shellpy的主体是Python,总体的编码和Python是一样的,想要嵌入Shell命令的时候,在命令前面加一个 ` (Tab上面那个键,一个右点号)。例如`ls -l`或者`ls -l也支持多行命令echo test > te
1.使用os.system()去调用,但是只能返回执行状态,不能获取shell cmd执行结果
#!/usr/bin/python
# -*- coding: utf-8
import os
status = os.system("ps aux |grep Xcode |grep -v grep")
print status
2.使用os.popen执行并获取结果
如果返回是str,直接通过read拿结果使用,如果是多行,选择readlines转list获取每行内容
#整份字符串处理
p
第一种情况
os.system('ps aux')
执行系统命令,没有返回值
第二种情况
result = os.popen('ps aux')
res = result.read()
for line in res.splitlines():
print line
执行系统命令,可以获取执行系统命令的结果
p = subprocess.Popen('ps aux',shell=True,stdout=subprocess.PIPE)
out,err =
方法一、使用os模块的system方法:os.system(cmd),其返回值是shell指令运行后返回的状态码,int类型,0表示shell指令成功执行,256表示未找到,该方法适用于shell命令不需要输出内容的场景。
举例说明:
1. 列举当前目录下的所有文件。
import os
val = os.system('ls -al')
print val
没有找到时,sh返回的状态码是1,而适用python调用,返回的是:256
方法二、使用os.popen(),该方法以文件的形式返回