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