python中shell的调用
python中shell的调用
我们在执行一些简单的脚本语言时,python简洁的优势就展现出来了。但是也有一些多层任务的叠加,就需要我们借用shell来完成了。本篇整理了两种shell调用的方法:system和popen(),这两个函数也是在执行命令时会调用到的。下面我们就这两种方法展开详细的讲解。
1.os.system
直接在终端输出执行结果,返回执行状态0或者1。
此函数会启动子进程,在子进程中执行command,并返回command命令执行完毕后的退出状态,如果command有执行内容,会在标准输出显示。这实际上是使用C标准库函数system()实现的;
缺点:这个函数在执行command命令时需要重新打开一个终端,并且无法保存command命令的执行结果;
实例
importos
os.system('cd/')
2.os.popen()
打开一个与command进程之间的管道;这个函数的返回值是一个文件对象,可以读或者写(由mode决定,mode默认是‘r’)。如果mode为’r’,可以使用此函数的返回值调用read()来获取command命令的执行结果。
os.system(cmd)或者os.popen(cmd),前者返回值是脚本的退出状态码,后者的返回值是脚本执行过程中的输出内容。实际是使用时视情况而选择;
实例
subprocess.Popen(args,bufsize=0,executable=None,stdin=None,stdout=None,
stderr=None,preexec_fn=None,close_fds=False,shell=False,cwd=None,env=None,
universal_newlines=False,startupinfo=None,creationflags=0)
以上就是python中shell的调用,可以说两种方法各有利弊,大家在使用时可以根据自己的需要来选择。有关调用shell的方法还有很多,大家可以在课外了解一下。更多Python学习教程请关注IT培训机构:千锋教育。
猜你喜欢LIKE
相关推荐HOT
更多>>python中如何dataframe转换为ndarray?
python中如何dataframe转换为ndarray?小编介绍过python中ndarray与series如何相互转换的方法,其实Series转换为ndarray是一个一维数组,作为pan...详情>>
2023-11-14 05:21:25python中os.remove()的使用注意
python中os.remove()的使用注意计算机一般来说是需要定期的清理,系统的内存不能延伸,同时有一些不需要的文件也可以得以清除掉。有些人会使用o...详情>>
2023-11-14 04:47:11python元组的优势有哪些
python元组的优势有哪些本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、因为元素不可变性,它可以作为哈希类型的key值。这样使...详情>>
2023-11-14 03:55:04python如何获取当前文件的部分信息?
python中如何获取当前文件的部分信息?一、文件对象常用的属性1、file.name:文件的名称2、file.mode:打开文件时,采用的文件打开模式3、file.e...详情>>
2023-11-14 03:24:14热门推荐
python中如何应用视图函数?
沸python根据键值(value)返回键(key)
热python中pickle模块是什么?
热python解析json文件方法
新python中如何dataframe转换为ndarray?
python中os.remove()的使用注意
Python中if嵌套是什么?
python元组的优势有哪些
python如何获取当前文件的部分信息?
Python使用平面文件进行存储
python中remove()方法如何使用删除后的值?
python如何使用RE正则表达检验字符串
pythonSelenium操作Cookie的方法
python类方法的注意点