自动创建conda虚拟环境,并安装依赖包

自动创建conda虚拟环境,并安装依赖包

bat 复制代码
chcp 65001 > nul
@echo off
setlocal enabledelayedexpansion

:: 指定配置文件的路径(可以是绝对或相对路径)
set "CONFIG_FILE=%~dp0config.ini"

if not exist "%CONFIG_FILE%" (
    echo 错误:找不到配置文件 %CONFIG_FILE%
    pause > nul
    exit /b 1
)
:: 读取配置文件,跳过注释、空行和分组行
for /f "usebackq delims=" %%l in ("%CONFIG_FILE%") do (
    set "line=%%l"
    :: 跳过空行、分组行(以[开头)、注释行(以;开头)
    if defined line (
        if "!line:~0,1!" NEQ "[" if "!line:~0,1!" NEQ ";" (
            :: 解析 KEY=VALUE
            for /f "tokens=1,* delims==" %%a in ("!line!") do (
                set "%%a=%%b"
            )
        )
    )
)


:: 此时环境变量已经全部导入,可以直接使用
echo virtual-env:%ENV_NAME%
echo Python-version:%PYTHON_VERSION%
echo WORK_DIR:%WORK_DIR%
echo requirements-file:%REQUIREMENTS_FILE%
echo pip-index-url:%PIP_INDEX_URL%

:: 后续你就可以用这些变量创建虚拟环境、安装依赖等
:: 切换到工作目录
cd /d "%WORK_DIR%"
if errorlevel 1 (
    echo [错误] 无法切换到目录 %WORK_DIR%
    pause
    exit /b 1
)

:: 检查 Conda 是否可用
where conda > nul 2>&1
if errorlevel 1 (
    echo [错误] 未找到 Conda 命令,请确保 Conda 已安装并添加到 PATH。
    pause
    exit /b 1
)

:: 检查虚拟环境是否已经存在 找到为0表示存在,否则为1
conda env list | findstr /C:"%ENV_NAME%" > nul
if errorlevel 1 (
    echo [信息] 虚拟环境 "%ENV_NAME%" 不存在,正在创建...
) else (
    echo [信息] 虚拟环境 "%ENV_NAME%" 已存在,无法创建
    pause
    exit /b 1
)

:: 创建虚拟环境
call conda create -n %ENV_NAME% python=%PYTHON_VERSION% -y
if errorlevel 1 (
    echo [错误] 创建环境失败
    pause
    exit /b 1
)else (
    echo [信息] 环境创建成功
)

:: 激活虚拟环境
call conda activate %ENV_NAME%
if errorlevel 1 (
    echo [错误] 激活环境失败
    pause
    exit /b 1
)
else (
    echo [信息] 环境激活成功
)

echo [信息] 正在安装依赖包,请稍候...
pip install -r %REQUIREMENTS_FILE% -i %PIP_INDEX_URL%
if errorlevel 1 (
    echo [错误] 安装依赖时出现错误,请检查网络或 requirements.txt 内容
    pause
    exit /b 1
)
else (
    echo [信息] 依赖包安装成功
)
echo ================================
echo 恭喜!所有依赖安装完成!
echo 虚拟环境名称: %ENV_NAME%
echo 激活命令: conda activate %ENV_NAME%
echo 当前工作目录是:%cd%
echo ================================
echo 按任意键退出...

@REM pause
endlocal
exit /b 0

自动删除conda虚拟环境

bat 复制代码
chcp 65001 > nul
@echo off
setlocal enabledelayedexpansion

:: 指定配置文件的路径(可以是绝对或相对路径)
set "CONFIG_FILE=%~dp0config.ini"

if not exist "%CONFIG_FILE%" (
    echo 错误:找不到配置文件 %CONFIG_FILE%
    pause > nul
    exit /b 1
)


:: 读取配置文件,跳过注释、空行和分组行
for /f "usebackq delims=" %%l in ("%CONFIG_FILE%") do (
    set "line=%%l"
    :: 跳过空行、分组行(以[开头)、注释行(以;开头)
    if defined line (
        if "!line:~0,1!" NEQ "[" if "!line:~0,1!" NEQ ";" (
            :: 解析 KEY=VALUE
            for /f "tokens=1,* delims==" %%a in ("!line!") do (
                set "%%a=%%b"
            )
        )
    )
)


:: 此时环境变量已经全部导入,可以直接使用
echo virtual-env:%ENV_NAME%
echo Python-version:%PYTHON_VERSION%
echo WORK_DIR:%WORK_DIR%
echo requirements-file:%REQUIREMENTS_FILE%
echo pip-index-url:%PIP_INDEX_URL%

:: 后续你就可以用这些变量创建虚拟环境、安装依赖等 切换到工作目录
cd /d "%WORK_DIR%"
if errorlevel 1 (
    echo [错误] 无法切换到目录 %WORK_DIR%
    pause
    exit /b 1
)
pause
:: 检查 Conda 是否可用
where conda > nul 2>&1
if errorlevel 1 (
    echo [错误] 未找到 Conda 命令,请确保 Conda 已安装并添加到 PATH。
    pause
    exit /b 1
) else (
    echo [信息] Conda 命令可用,将继续执行...
)
pause
:: 检查虚拟环境是否已经存在  找到为0表示存在,否则为1
conda env list | findstr /C:"%ENV_NAME%" > nul
if errorlevel 1 (
    echo [信息] 虚拟环境 "%ENV_NAME%" 不存在,无需删除...
    pause
    exit /b 1
) else (
    echo [信息] 虚拟环境 "%ENV_NAME%" 已存在,正在删除...
)

:: 删除虚拟环境
call conda remove -n %ENV_NAME% --all -y
if errorlevel 1 (
    echo [错误] 删除环境失败
    pause 
    exit /b 1
)  else (
    echo [信息] 环境删除成功成功
)
echo ================================
echo 恭喜!所有依赖删除完成!
echo ================================
echo 按任意键退出...
pause 
endlocal
exit /b 0

项目结构如下

requirements.txt文件内容如下

config.ini文件内容如下

相关推荐
饭来_4 天前
Ubuntu 中出现 CondaToSNonInteractiveError 的解决方法
ubuntu·conda·debug
emo_2b6 天前
Pycharm配置conda解释器时遇到的问题及解决方法
linux·pycharm·conda
Είναι η κοπέλα8 天前
llama.cpp 与 GGUF 格式:本地大模型的“裸引擎“
开发语言·人工智能·pytorch·python·conda
Είναι η κοπέλα10 天前
显存计算与模型选择:你的显卡能跑多大的模型
人工智能·pytorch·python·开源·conda
天蓝蓝的本我10 天前
conda日常用到的命令积累1-登录linux,安装pycharm
linux·pycharm·conda
Είναι η κοπέλα12 天前
Python 虚拟环境:venv、conda 与 Python 版本选择全解
开发语言·python·conda
夏天拐跑了西瓜14 天前
一文入门LangChain:从框架认知到构建你的第一个AI Agent
python·langchain·conda·agent
weixin_4617694014 天前
机械臂SDK运行日志
conda·sdk
三点水-here16 天前
从 Miniconda 迁移到 Miniforge3 全记录:安装、配置、环境迁移与排错实录
python·conda
MI_farmer17 天前
Anaconda 安装在 D 盘但虚拟环境跑到 C 盘,以及 Conda PermissionError: WinError 5 的解决方法
c语言·开发语言·conda