新的版本推荐使用subprocess.run() 来解决一般问题。
subprocess.run()、subprocess.call()、subprocess.check_call()和subprocess.check_output()都是通过对subprocess.Popen的封装来实现的高级函数,因此如果我们需要更复杂功能时,可以通过subprocess.Popen来完成
run默认不会返回输出,只返回命令和执行状态
1 |
|
输出如下:
如果要返回输出,要添加参数,传递subprocess.PIPE给stdout和stderr,然后可以通过返回的CompletedProcess类实例的stdout和stderr属性或捕获相应的内容;
universal_newlines: 该参数影响的是输入与输出的数据格式,比如它的值默认为False,此时stdout和stderr的输出是字节序列;当该参数的值设置为True时,stdout和stderr的输出是字符串。
总代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
|
参考资料:python3.5 官方文档 : https://docs.python.org/3.5/library/subprocess.html
Python的使用途径越来越广泛了,而Linux作为服务器端也是大有作为,使用Python来实现Linux的脚本操作,简化了服务器端的操作,提高了可控性。
以上就是利用python3实现Linux的脚本功能的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
为什么表达式“in [1,0] == true”的执行结果是false
Python:中input()与raw_input()的详解
“在windows下,用pip install tornado时,提示syntaxerror: invalid syntax 语法错误。”问题
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。