繁体   English   中英

用于安装python和运行脚本的批处理文件

[英]Batch File for installing python and running script

我正在编写执行以下操作的实用程序:

  1. 检查 Python 是否安装了它。 如果未安装,脚本将下载 python 并安装它。 在同一个会话中,它执行 python 脚本。

但是我在这里面临一个问题,一旦脚本安装了 python,它就会在执行 python 脚本时抛出错误,因为 cmd 中无法识别 python。 但是如果我再次运行相同的程序,它就可以正常工作。

这里的问题是 - 安装 Python 后,除非我重新启动窗口,否则命令提示符不会识别 python 命令。

有什么办法吗?

脚本是:在下面突出显示的部分出现错误

:errorNoPython

echo.
echo Error^: Python not installed
echo.
echo.
echo Downloading Python 3.7.0...
IF EXIST "%CD%\python-3.7.0.exe" (
  echo Found Installer at "%CD%\python-3.7.0.exe"
) ELSE (
  powershell -Command "& {[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12, [Net.SecurityProtocolType]::Tls11, [Net.SecurityProtocolType]::Ssl3, [Net.SecurityProtocolType]::Tls; Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.7.0/python-3.7.0.exe' -OutFile '%CD%\python-3.7.0.exe';}"
  echo Python download completed.
)

echo Installing Python...
powershell %CD%\python-3.7.0.exe /quiet InstallAllUsers=0 PrependPath=1 Include_test=0 TargetDir=c:\Python\Python370
setx path "%PATH%;C:\Python\Python370\"

timeout /t 30 /nobreak > nul
echo Python Installation completed.
echo Installing python dependencies.
**start cmd /k python -m pip install requests
start cmd /k python -m pip install pyjavaproperties**

为了重新加载环境,您必须关闭并打开cmd.exe

所以为了绕过它,你可以set路径和setx

完全按原样复制,但这将设置当前环境中的路径:

setx path "%PATH%;C:\Python\Python370\"
set "path=%PATH%;C:\Python\Python370\"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM