1、概述
2、os包
3、subprocess包
4、對比
5、參考文章python
python與shell交互的方式有一下幾種:os.system()
os.popen()
commands包
subprocess包
shell
import os #使用讀通道 f = os.popen("ls -l")# 執行此語句後,將建立子shell運行參數中指定的命令,可是不阻塞父進程 f.read()# 執行讀取操做時,將阻塞父進程 #使用寫管道 #須要提早寫好echo文件 ''' #echo.py while True: in = input() if in == "quit" or in == "exit": print("Bye") break print("[-] ", in) ''' f = os.popen("python echo.py", "w") f.write("hello")
os.system
、os.spawn*
等call(*popenargs, timeout= None, **kwargs)
ide
os.system()
check_call(*popenargs, **kwargs)
函數
CalledProcessError
異常)check_output(*popenargs, timeout=None, **kwargs)
CalledProcessError
異常)input
getoutput(cmd)
ui
getstatusoutput(cmd)
spa
run(args, *, stdin = None, input = None, stderr = None, shell = False, cwd = None, timeout = None, check = False, encoding = None, errors = None)
run
函數是對Popen
類封裝後造成的簡單函數