我想做一件非常简单的事,但我很遗憾。
我正在使用一个名为Blender的程序,我想在python中编写一个脚本,打开一个.blend文件,但是使用blender.app,它与mix文件位于同一个文件夹中,而不是blender.app位于应用程序中。 (使用Macosx)
所以我认为这应该可以做到......但是它会打开搅拌机两次......
import os
path = os.getcwd()
print(path)
os.system("cd path/")
os.system("open blender.app Import_mhx.blend")
我也试过这个
import os
path = os.getcwd()
print(path)
os.system("cd path/")
os.system("open Import_mhx.blend")
但不幸的是,它使用默认的blender.app打开.blend文件,该文件位于应用程序...
任何想法?
答案 0 :(得分:3)
这不起作用,因为system
命令在子shell中执行,而chdir
仅对该子shell有效。用
os.system("open -a path/blender.app Import_mhx.blend")
或(更好)
subprocess.check_call(["open", "-a", os.path.join(path, "blender.app"),
"Import_mhx.blend"])
答案 1 :(得分:1)
您是否尝试过告诉open
命令以特定应用程序打开它?
open -a /path/to/blender.app /path/to/Import_mhx.blend
你的第一次尝试是在正确的轨道上,但你真的告诉open
打开两个不同的东西。与另一个没有。