chcp 65001 if [%1]==[echo_on] goto :program :echo_no set TEMP_ECHO_NO=TRUE @echo off :program if NOT "%PYTHON_CONFIGURE%"=="" goto :echo_check set PYTHON_CONFIGURE=%~f0 set CD_PREV=%cd% rem "%~dp0..\Resources" - УСТАНОВКА ПУТИ ОТ РАСПОЛОЖЕНИЯ ФАЙЛА, В КОТОРОМ НАПИСАН ЭТОТ ТЕКСТ. ВНИМАНИЕ! ПОСЛЕ %~dp0 СИМВОЛ \ СТАВИТЬ НЕ ТРЕБУЕТСЯ rem "%cd%\..\Resources" - УСТАНОВКА ПУТИ ОТ РАБОЧЕЙ ДИРЕКТОРИИ, В КОТОРОЙ БЫЛ ВЫЗВАН ЭТОТ СКРИПТ. ВНИМАНИЕ! ПОСЛЕ %cd% СИМВОЛ \ СТАВИТЬ ТРЕБУЕТСЯ ОБЯЗАТЕЛЬНО rem Пример использования python-win-configure.cmd python - выполнить команду python в настроенном окружении goto comment_set_path rem ПРИМЕР КОНСТРУКЦИИ ДЛЯ ДОБАВЛЕНИЯ ДИРЕКТОРИИ В ПЕРЕМЕННУЮ ОКРУЖЕНИЯ PATH set TEMP_LOCATION="%~dp0..\Resources\WPy64-3720\python-3.7.2.amd64" cd /d %TEMP_LOCATION% set PATH=%cd%;%PATH% rem ВНИМАНИЕ! ЗНАК = ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВПРИТЫК С ПЕРЕМЕННОЙ ОКРУЖЕНИЯ И ЗНАЧЕНИЕМ - ИНАЧЕ УСТАНОВКА ЗНАЧЕНИЯ БУДЕТ ПРОИЗВЕДЕНА НЕКОРРЕКТНО :comment_set_path goto comment_set_pythonpath rem ПРИМЕР КОНСТРУКЦИИ ДЛЯ ДОБАВЛЕНИЯ ДИРЕКТОРИИ В ПЕРЕМЕННУЮ ОКРУЖЕНИЯ PYTHONPATH set TEMP_LOCATION="%~dp0..\Sources" cd /d %TEMP_LOCATION% set PYTHONPATH=%cd%;%PYTHONPATH% rem ВНИМАНИЕ! ЗНАК = ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВПРИТЫК С ПЕРЕМЕННОЙ ОКРУЖЕНИЯ И ЗНАЧЕНИЕМ - ИНАЧЕ УСТАНОВКА ЗНАЧЕНИЯ БУДЕТ ПРОИЗВЕДЕНА НЕКОРРЕКТНО :comment_set_pythonpath rem ЗОНА УСТАНОВКИ ПЕРЕМЕННЫХ ОКРУЖЕНИЯ! :configure set TEMP_LOCATION="%~dp0..\Resources\WPy64-3720\python-3.7.2.amd64\Scripts" cd /d %TEMP_LOCATION% set PATH=%cd%;%PATH% set TEMP_LOCATION="%~dp0..\Resources\WPy64-3720\python-3.7.2.amd64" cd /d %TEMP_LOCATION% set PATH=%cd%;%PATH% set TEMP_LOCATION="%~dp0..\Sources" cd /d %TEMP_LOCATION% set PYTHONPATH=%cd%;%PYTHONPATH% rem восстановление каталога рабочей директории программы cd %CD_PREV% rem выполнить вызов, если есть параметры, начиная с %2+ if "%1"=="" goto :echo_check set ORPA_ARGV= rem один shift - все параметры, начиная с %2 (или с %1, если не echo_on) if "%1"=="echo_on" shift :loop1 if "%1"=="" goto after_loop if "%ORPA_ARGV%"=="" goto :no_param set ORPA_ARGV=%ORPA_ARGV% %1 goto :loop1_next :no_param set ORPA_ARGV=%1 :loop1_next shift goto loop1 :after_loop echo PYTHON-CONFIGURE: ОБНАРУЖЕНЫ ПАРАМЕТРЫ ИНИЦИАЛИЗАЦИИ ПРОГРАММЫ: %ORPA_ARGV% :echo_check rem включить Echo, если он был принудительно выключен if NOT [%TEMP_ECHO_NO%]==[] goto :echo_on goto :eof :echo_on @echo on :eof if "%ORPA_ARGV%"=="" goto :eof2 %ORPA_ARGV% pause>nul :eof2