方法一:
procId = subprocess.Popen('adb shell', stdin = subprocess.PIPE)
procId.communicate('command1\
command2\
exit\
')
官网:https://docs.python.org/3/library/subprocess.html
方法二:
out_temp = tempfile.SpooledTemporaryFile(max_size=10 * 1000)
fileno = out_temp.fileno()
sp = subprocess.Popen(f'cmd', shell=True, stdin=subprocess.PIPE, stdout=fileno, stderr=fileno)
sp.stdin.write(f'cmd2\n'.encode('utf-8'))
sp.stdin.flush()
out_temp.seek(0)
info = out_temp.read()
方法三:
os.system('cmd'
返回值为0:代表成功;1:代表失败
方法四:
os.popen("cd.. && cd demo && touch 2.py ")
注意:
- 命令被分号“;”分隔,这些命令会顺序执行下去;
- 命令被“&&”分隔,这些命令会顺序执行下去,遇到执行错误的命令停止;
- 命令被双竖线“||”分隔,这些命令会顺序执行下去,遇到执行成功的命令停止,后面的所有命令都将不会执行;