批处理文件以激活 env 并运行 spyder。 CMD 保持打开状态

Posted

技术标签:

【中文标题】批处理文件以激活 env 并运行 spyder。 CMD 保持打开状态【英文标题】:batch file to activate env and run spyder. CMD remains open 【发布时间】:2019-01-15 00:53:42 【问题描述】:

我创建了一个简单的批处理文件来激活环境,然后运行 ​​spyder。

@echo off
call activate env
spyder.exe
exit

现在的问题是 CMD 在执行后仍然打开,并且它附加到 spyder,这意味着如果我关闭它,Spyder 也会退出并显示以下消息。

forrtl: error (200): program aborting due to window-CLOSE event
Image              PC                Routine            Line        Source
libifcoremd.dll    00007FF8D20694C4  Unknown               Unknown  Unknown
KERNELBASE.dll     00007FF917927EDD  Unknown               Unknown  Unknown
KERNEL32.DLL       00007FF918D91FE4  Unknown               Unknown  Unknown
ntdll.dll          00007FF91ACECB31  Unknown               Unknown  Unknown
QObject::~QObject: Timers cannot be stopped from another thread 

根据此处和其他类似帖子的建议,我实际上也尝试了以下代码。现在唯一的区别是 cmd 关闭但另一个窗口在其位置保持打开状态。新窗口的icon不是cmd图标。

@echo off
call activate env
start spyder.exe
exit

另外,我试过了

cmd "/c activate env && start spyder" 

与第一批结果相同

cmd "/c activate env && spyder && exit"

在它做任何事情之前退出 和

cmd "/c activate env && start spyder && exit"

与第二批结果相同

有没有人可以解决这个问题?谢谢

【问题讨论】:

试试start spyder.exe 我之前尝试过,但我现在也尝试过,结果相同。 然后edit 你的问题是添加“开始”部分,解释开始不起作用以及它究竟做了什么。因为每次我都试过了,效果很好。 我编辑它!谢谢你的建议。 编辑好,重新打开。 【参考方案1】:

我建议使用RUNNHIDE 的小型额外程序,如Rob van der Woude's 网站上所述。

RUNNHIDE.EXE spyder.exe

【讨论】:

以上是关于批处理文件以激活 env 并运行 spyder。 CMD 保持打开状态的主要内容,如果未能解决你的问题,请参考以下文章

如何使批处理文件在 anaconda 提示符下运行

将远程服务器连接到 spyder 以运行 Python 代码

Spyder 无法在 conda 环境中加载 tensorflow,尽管 python 可以

在 PyCharm/CLion 中运行脚本之前激活 conda env

虚拟环境应该驻留在envs文件夹中吗?

如何运行两个单独的 Spyder 实例