Linux下用Python获取命令行输出的几个方案
Python在慢慢成为脑影像数据处理中的主流语言。而在做脑影像处理时,不免有时候需要用到一些别人开发好的工具包,而这些包并不都是python包。下面是学习啦小编收集整理的Linux下用Python获取命令行输出的几个方案,希望对大家有帮助~~
Linux下用Python获取命令行输出的几个方案
工具/原料
电脑
Linux系统
Python
方法/步骤
选择要使用的命令行,可以是系统的命令,也可以是从其他渠道获取的已经编译好的命令。这里以MIxnyn为例,搜索MIxnyn MILCA即可。
采用terminal和ipython写程序,打开terminal,输入ipython。
方案一、采用commands包获取命令行的输出信息。
import commands
status, output = commands.getstatusoutput(micmd)
mi = output
方案二、采用subprocess获取命令行的输出信息。
import subprocess
res = subprocess.Popen(micmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, close_fds=True)
mi = res.stdout.readlines()
mi = float((mi[0].strip()))
方案三、直接采用os获取命令行的输出信息。
import os
p = os.popen(' '.join(['MIxnyn', zwspfile, str(Ndx), str(Ndy), str(N), str(kneig)]))
mi = p.read()
mi = mi.strip()
在实际的应用过程中,可以根据实现环境和需要选择其中一种方案辅助读取命令行的输出。另外,也可以通过先将命令行输出的内容保存到文本文件,然后再进行读取。
Linux下用Python获取命令行输出的几个方案相关文章: