在调用 pip.exe
时,可以使用相对路径也可以使用绝对路径
路径中如果包含空格,最好使用相对路径,这就要求 pip.exe
所在文件夹设置为环境变量
可以参考:
Windows下将文件夹设置为环境变量
@echo off
setlocal enabledelayedexpansion
:: 选择卸载还是安装1: 卸载 0:安装
set flag=0
:: 输入 pip.exe 的相对路径或者绝对路径
set pippath=pip.exe
:: 输入需要安装的 pack 包,空格分开
set packlist=openpyxl requests
:: 镜像源
set packsource=-i https://pypi.tuna.tsinghua.edu.cn/simple
:: 下面无需修改
set array[0]=s
set num=0
if %flag%==1 (
echo 卸载软件包
:: 获取已安装的包名
for /f "delims= " %%i in ('%pippath% list ') do (
set array[!num!]=%%i
echo 第 !num! 行:%%i
set /a num+=1
)
echo 共 !num! -2 个包
set /a num-=1
:: 根据包名卸载包名
for /L %%i in (2,1,!num!) do (
::echo 判断第 %%i 个包:!array[%%i]!
if not !array[%%i]!==pip (
%pip_path% uninstall !array[%%i]!
echo 第 %%i 个包 !array[%%i]! 已卸载
)
)
:: 查看卸载后的 pack包
echo 卸载后的包
for /F "delims=" %%i in ('%pippath% list') do (
echo %%i
)
) else (
echo 安装软件包
for %%i in (%packlist%) do (
echo %%i 准备安装 %%i:%pippath% install %%i %packsource%
%pippath% install %%i %packsource%
echo %%i 已安装
)
:: 查看安装后的 pack包
echo 安装后的包
for /F "delims=" %%i in ('%pippath% list') do echo %%i
)
pause