目录html
subprocess模块容许你去建立一个新的进程让其执行另外的程序,并与它进行通讯,获取标准的输入、标准输出、标准错误以及返回码等。更多查看官网:https://docs.python.org/2/library/subprocess.html?highlight=subprocess#frequently-used-argumentspython
import subprocess import subprocess ''' sh-3.2# ls /Users/nick/Desktop |grep txt$ mysql.txt tt.txt 事物.txt ''' res1 = subprocess.Popen('ls /Users/jieli/Desktop', shell=True, stdout=subprocess.PIPE) res = subprocess.Popen('grep txt$', shell=True, stdin=res1.stdout, stdout=subprocess.PIPE) print(res.stdout.read().decode('utf-8')) # 等同于上面,可是上面的优点在于,一个数据流能够和另一个数据流交互,能够经过爬虫获得结果真后交给grep res1 = subprocess.Popen('ls /Users/jieli/Desktop |grep txt$', shell=True, stdout=subprocess.PIPE) print(res1.stdout.read().decode('utf-8')) # windows下: # dir | findstr 'test*' # dir | findstr 'txt$' res1 = subprocess.Popen(r'dirC:\Users\Administrator\PycharmProjects\test\函数备课', shell=True, stdout=subprocess.PIPE) res = subprocess.Popen('findstr test*', shell=True, stdin=res1.stdout, stdout=subprocess.PIPE) # subprocess使用当前系统默认编码,获得结果为bytes类型,在windows下须要用gbk解码 print(res.stdout.read().decode('gbk'))