繁体   English   中英

从 python 脚本执行命令行程序(Abaqus-python 脚本)

[英]Executing command line program (Abaqus-python script) from python script

我正在尝试从在 Spyder 中执行的另一个 python 脚本(python 3.7,windows 10)运行 Abaqus-python 脚本文件。

如果我在 CMD abaqus cae -noGUI model.py中运行以下命令,代码将按预期执行。 但是,如果我尝试运行cp = subprocess.run('abaqus cae -noGUI model.py',shell=True)我没有得到任何 output。 以下是 cp 中返回的内容。

在此处输入图像描述

笔记:

  1. 我尝试运行的 Abaqus-python 文件与我拥有的 python 脚本位于同一文件夹中。
  2. 我尝试了不同字符串和列表格式的各种 sp.call、sp.run、os.systems。
  3. “C:\Abaqus\Commands”和“C:\SIMULIA\Commands”都在我的 PATH 环境变量中。
  4. 我认为 -noGUI 调用对问题很重要。 我似乎在这个问题上找不到其他人。

经过大量挖掘后,我认为问题在于我的 python 安装的 PATH 已经完成,因为 Anaconda 所以我的路径与 CMD 不同。 我通过将完整的 Abaqus 位置添加到命令来解决此问题。 见下文。

subprocess.call(r'C:\SIMULIA\Commands\abaqus job=Job-1 ask_delete=OFF interactive', shell=True)

我不确定您的问题是什么引起的,但请注意 Abaqus 脚本基于 python 2.7,因此您可能需要降级它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM