当前位置: 首页 > 图灵资讯 > 行业资讯> python中shell的调用

python中shell的调用

来源:图灵python
时间: 2024-09-18 15:13:38

在执行一些简单的脚本语言时,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的方法有很多,课后可以了解一下。