首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python运行csh命令

python运行csh命令
EN

Stack Overflow用户
提问于 2016-02-22 10:18:20
回答 1查看 2.7K关注 0票数 0

最近,我想使用python脚本在linux.This中设置环境,这是我的代码中的一行:

代码语言:javascript
复制
p = subprocess.call(['/bin/csh', '-c', "source setup.csh"])

我的setup.csh文件如下:

代码语言:javascript
复制
add questa10.2b
add ds5-2013.06
setenv MODELSIM modelsim.ini

但是当我运行我的python时,它在屏幕上显示了文件的来源,但事实证明我必须在命令行上输入自己。

我该如何解决这些问题呢?有谁能帮我一下吗?

EN

回答 1

Stack Overflow用户

发布于 2016-02-22 10:35:56

您将创建一个新的csh shell作为一个子进程,然后在该shell中运行命令,然后该shell将终止。这些命令不会在运行Python的父shell中运行,也不会影响父shell。当您自己运行这些命令时,它们会影响当前的shell。

如果需要在Python终止后将这些设置保留在当前shell中,通常最好的方法是使用source setup.csh,而不是将其放入Python脚本中。如果Python脚本的其他子进程需要您的环境变量,您可以更改os.environ

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35544801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档