Powershell
遠端安裝 python 和 pip 包
我正在嘗試使用 powershell 在 Azure VM 上遠端安裝帶有 pip 包的 python。部署到 VM 的腳本:
Start-Process 'F:\python-3.9.5-amd64.exe'-ArgumentList ("/passive", "InstallAllUsers=1", "PrependPath=1", "Include_test=0", "Include_pip=1") -Wait Start-Sleep -s 120 & pip install urllib3 --no-index --find-links 'F:\urllib3-1.26.5-py2.py3-none-any.whl' & pip install selenium --no-index --find-links 'F:\selenium-3.141.0-py2.py3-none-any.whl'
Python 在 Program Files 中正確安裝,並添加了環境變數,但
pip
無法辨識。我已經嘗試在腳本 (
set
/setx
..) 中為 Python 和 Scripts 文件夾設置一個環境變數,但它沒有幫助。如果我辨識到機器上的 RDPpip
,並且軟體包安裝正確。python
也不被辨識(試過python -m pip install ...
)。為什麼點子不被辨識?
您的腳本會執行安裝,但不會刷新安裝和執行
pip
. 因此,pip
在路徑中找不到執行檔。檢索值
$env:PATH
並添加自定義路徑$scriptblock = { $env:computername [Environment]::GetEnvironmentVariable("Path","Machine") # add pip path to $env:path variable temporarily $env:path += ";c:\whatever\pip" # run pip here python -m pip install package } Invoke-Command -ComputerName mycomputer -ScriptBlock $scriptblock
請注意,Chocolatey可能是安裝軟體的更好方法;它還提供了一個
refreshenv
重新載入環境變數的命令。