猿问

如何读取 shell 命令的输出

我正在尝试运行一个 shell 脚本,并根据输出确定什么是 node-1 和 node-2。目前我能够获得所需的 shell 命令输出,但不确定如何排序/读取它并获取节点名称。


import subprocess

cmd = ["olsnodes", "-n"]

proc = subprocess.Popen(cmd, stdout=subprocess.PIPE)

for line in proc.stdout.readlines():

    print line

输出:


vsin599   1


vsin600   2

我想从输出中确定节点名称,例如反对数字 1 的内容是节点 1,反对数字 2 的内容是节点 2 ..等等,如果有任何其他条目


慕姐8265434
浏览 155回答 1
1回答

牧羊人nacy

根据汤姆道尔顿的评论d = {}for line in proc.stdout.readlines():    node,key = line.split(' ')    d[int(key)] = node
随时随地看视频慕课网APP

相关分类

Python
我要回答