Как заставить пакетные файлы запускаться в anaconda prompt

После установки anaconda3 в windows я могу запускать команды python из приглашения anaconda, но не из командной строки Windows. Я хотел бы сделать ярлык на рабочем столе, чтобы активировать мою среду и запустить spyder из нее. Раньше я делал это с файлом .bat, но теперь, когда я не могу запускать команды python из cmd.exe, это не работает.

Есть ли альтернативный способ запуска пакетных файлов для запроса anaconda? Я знаю, что я мог бы просто изменить свой PATH, чтобы получить cmd.exe для запуска команд python, но я хотел бы избежать этого, если это возможно.

Ответ 1

Я полагаю, что все, что предлагает Anaconda, это открыть CMD и запустить командный файл. Сделайте первую команду вашего скрипта:

call <anaconda_dir>/Scripts/activate.bat <anaconda_dir>

Ответ 2

Расширяя ответ Джереми:

Вам необходимо использовать call для сценария "activ.bat", а также для любых последующих команд, связанных с Anaconda/Python. В противном случае приглашение сразу завершится после запуска команд, даже если вы используете оператор pause. Пожалуйста, смотрите ниже пример:

set root=C:\Users\john.doe\AppData\Local\Continuum\anaconda3

call %root%\Scripts\activate.bat %root%

call conda list pandas

pause

Ответ 3

добавлять

call "<anaconda_dir>\Scripts\activate.bat"

в начало вашего скрипта (на самом деле он не требует аргумента и по умолчанию активирует base среду).

Обратите внимание, что после этой строки вы можете использовать CONDA_ CONDA_!

Ответ 4

Версия Powershell:

$qtconsole="C:\Users\<YourUserName>\.anaconda\navigator\scripts\qtconsole.bat"
start-process $qtconsole -WindowStyle Hidden

Примечание: этот скрипт будет запускать только один экземпляр qtconsole одновременно из-за ограничений DLL библиотеки Linux QT GUI Linux, поддерживающей только один экземпляр одного и того же exe файла, запущенного одновременно. Вероятно, поэтому они используют "Anaconda Navigator" для запуска программ QtConsole, чтобы обойти это ограничение.