My question is if you can install python with powershell, cmd, vbs or any other language built into Windows already? If this was already asked please redirect me to the answ
The best way to install Python through Windows Command Prompt will be through Chocolatey (Windows Package Manageer).
Steps to install python 3 will be as follows :-
Open CMD using 'Run as Administrator'.
Download and Install Chocolatey using the following command.
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
choco install -y python3
python --version
You could download the setup you want to install and then install it automatically without using the setup's UI:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Invoke-WebRequest -Uri "https://www.python.org/ftp/python/3.7.0/python-3.7.0.exe" -OutFile "c:/temp/python-3.7.0.exe"
c:/temp/python-3.7.0.exe /quiet InstallAllUsers=0 PrependPath=1 Include_test=0
I don't think it will work without admin privileges though, I tried using InstallAllUsers=0
to install it only for the current user but it is still asking for elevation.
There are some options you can use when installing it this way, here is the doc: https://docs.python.org/3.6/using/windows.html#installing-without-ui
You can not install it without administrator privileges. It would be lack of security I guess. What you can use in pipelines for instance is:
$url = "https://www.python.org/ftp/python/3.7.6/python-3.7.6-amd64.exe"
$output = "C:/tmp/python-3.7.6-amd64.exe"
if (Test-Path $output) {
Write-Host "Script exists - skipping installation"
return;
}
New-Item -ItemType Directory -Force -Path C:/tmp
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Invoke-WebRequest -Uri $url -OutFile $output
& $output /passive InstallAllUsers=1 PrependPath=1 Include_test=0
But still, Admin rights are required