【问题标题】:What tokens to use with Popen for running a blender script?Popen 使用什么令牌来运行搅拌机脚本?
【发布时间】:2015-09-29 07:02:33
【问题描述】:

我尝试使用 Popen 从 python 运行以下命令,但是我不确定要传递给它的令牌应该是什么。

blender object.blend --background --python blenderObj.py -- box.obj object.obj

我尝试了各种组合,包括分别传递每个标记以及一起传递“--”和“背景”,但无法成功。请帮忙。

编辑[解决方案]: 正如 Ja8zyjits 在下面的 cmets 中所建议的那样,将整个命令作为单个字符串传递。

【问题讨论】:

  • 是命令行代码吗?
  • 是的,这正是要在终端上运行的代码

标签: python subprocess blender popen


【解决方案1】:

这将为您完成工作,试试这个。

import subprocess
p = subprocess.Popen(["blender object.blend --background --python blenderObj.py --box.obj object.obj"], stdout=subprocess.PIPE,stderr=subprocess.PIPE, shell=True)
out, err = p.communicate()

【讨论】:

  • 这会启动搅拌机,但它不会运行它应该运行的 python 脚本 blenderObj.py(在参数中指定)
  • 在该列表 [] 中将命令行参数作为字符串传递,检查间距并确保脚本在 blenderObj.py 所在的同一文件中运行
【解决方案2】:

正如 Ja8zyjits 在上面的 cmets 中所建议的,将整个命令作为单个字符串传递是可行的

【讨论】:

    猜你喜欢
    • 2014-01-15
    • 1970-01-01
    • 2013-02-14
    • 2016-07-21
    • 2012-02-07
    • 2017-06-15
    • 2019-02-24
    • 1970-01-01
    • 2014-06-07
    相关资源
    最近更新 更多