【问题标题】:OS.system- adding the output of OS .system output command to the command of another os system commandOS.system - 将 OS .system 输出命令的输出添加到另一个 os 系统命令的命令中
【发布时间】:2017-07-02 00:29:37
【问题描述】:

我只能使用 python 2.6.6 并且子进程不工作,所以我只需要使用 os 模块 下面是程序

import os 

server = raw_input("server name:")
var = "symaccess -sid 239 list -type init | grep \"{0}\"".format(server)
wwn = os.system(var)
init = 'symaccess -sid 239 -type init show {0}'.format(wwn)
print init
os.system(init)

上面是我用来将一个os.system 的输出添加到另一个os.system 的脚本,我执行了第一个os.system 但第二个os.system(unit) 没有出现,因为@987654326 的输出@ 应该分配给wwn 的变量。有人可以告诉如何将变量分配给os.system(init)

在此脚本中,var 的输出表明应该将一些 X 分配给 own,但它没有采用 X,而是将其作为 0。所以需要你的帮助来解决这个为什么它取零而不是X。最后这个X 应该放在init 变量{0}

【问题讨论】:

  • subprocess 不起作用是什么意思?从 Python 2.6 开始,os.systemos.popen 都被贬值了,取而代之的是 subprocess 模块,您应该改用它。
  • 我不知道,但是每当我使用子进程时,它都会抛出错误,就像没有像 tht 这样的模块一样。所以我们可以使用 OS 模块得到这个。

标签: python-2.x data-analysis emc


【解决方案1】:

os.system not 返回命令的输出 - 它返回错误级别。

如果需要命令输出,请使用

wwn = os.popen(var).read()

这会将命令var 的输出分配给wwn

请注意 - 输出完全返回,并带有尾随换行符。在使用它之前你可能想strip()它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-08
    • 2019-11-08
    • 1970-01-01
    • 2015-08-18
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多