Можно ли обрабатывать переменные среды в пакетном скрипте? - PullRequest
0 голосов
/ 31 мая 2019

Я создал очень простой командный файл в качестве средства запуска для сценария Python, однако он не работает нормально в зависимости от настройки «PATH» для пользователя (Python 2 x Python 3).Поскольку изменение PATH может вызвать проблемы с другими приложениями на основе Python 2, могу ли я сделать какое-либо обновление в .bat, чтобы сделать временное изменение в PATH во время работы сценария Py?
Идея состоит в том, чтобы использовать пакет дляминимальное вмешательство пользователя в настройку системы (желательно только двойной щелчок).Если да, что я могу сделать?

@echo off
title ###Beta Script Launcher###
python myscript.py 
pause

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

Чтобы временно изменить переменную пути:

path c:\mydir;%path%

документация

c:\srv> path /?
Displays or sets a search path for executable files.

PATH [[drive:]path[;...][;%PATH%]
PATH ;

Type PATH ; to clear all search-path settings and direct cmd.exe to search
only in the current directory.
Type PATH without parameters to display the current path.
Including %PATH% in the new path setting causes the old path to be
appended to the new setting.

нормальный способ сделать это для python, однако, это создать virtualenv (https://pypi.org/project/virtualenvwrapper-win/)

mkvirtualenv myenv
.. install everything in this environment ..

, а затем используйте его в вашем стартовом скрипте

@echo off
title ###Beta Script Launcher###
call workon myenv
python myscript.py 
pause

(отказ от ответственности, я один из тех, кто поддерживает virtualenvwrapper-win)

0 голосов
/ 31 мая 2019

Да, вы можете редактировать переменные среды в пакетном скрипте с помощью следующей команды

setx path "%PATH%;C:\New Folder" 

в зависимости от того, где установлен ваш питон, который вы хотите использовать. Но это навсегда изменит путь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...