免互動安裝Ruby 2.6、解除安裝,以及在部署工具中偵測安裝狀態所用的指令。只列出確定可用的指令:來自資訊清單,或是安裝程式技術的官方預設參數。
相關教學: 靜默安裝參數總整理:MSI、NSIS、Inno Setup · 用登錄檔或PowerShell解除安裝程式
使用winget
PowerShell
winget install --id RubyInstallerTeam.Ruby.2.6 -e --silent --accept-package-agreements --accept-source-agreementswinget upgrade --id RubyInstallerTeam.Ruby.2.6 -e --silentwinget uninstall --id RubyInstallerTeam.Ruby.2.6 -e --silent依安裝檔
64位元 · EXE(Inno Setup) · 所有使用者
靜默安裝
rubyinstaller-2.6.10-1-x64.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-自訂安裝資料夾
rubyinstaller-2.6.10-1-x64.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /DIR="C:\Apps\ruby-2-6"- 解除安裝登錄機碼
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RubyInstaller-2.6-x64-mingw32_is1
32位元 · EXE(Inno Setup) · 所有使用者
靜默安裝
rubyinstaller-2.6.10-1-x86.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-自訂安裝資料夾
rubyinstaller-2.6.10-1-x86.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /DIR="C:\Apps\ruby-2-6"- 解除安裝登錄機碼
- HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\RubyInstaller-2.6-i386-mingw32_is1
PowerShell:下載、驗證、安裝
下載官方檔案,驗證SHA256後靜默安裝。
install-ruby-2-6.ps1
$url = 'https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.10-1/rubyinstaller-2.6.10-1-x64.exe'
$sha256 = '75A012053B5758723E7DE9DB5AB2B8B87EEF13EF6040F3205FEEE0595AFD3A67'
$file = Join-Path $env:TEMP 'rubyinstaller-2.6.10-1-x64.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-' -Wait install-ruby-2-6.ps1
$url = 'https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-2.6.10-1/rubyinstaller-2.6.10-1-x86.exe'
$sha256 = 'F6E5852B0934EE7D2709D8981883FA6134D2406116165C14DC32282D296F41CA'
$file = Join-Path $env:TEMP 'rubyinstaller-2.6.10-1-x86.exe'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process -FilePath $file -ArgumentList '/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-' -Wait