Ruby 2.7を確認画面なしでインストール・アンインストールし、展開ツールで検出するためのコマンドです。マニフェストの記載か、インストーラー技術の既定値として確実なコマンドだけを表示しています。
関連ガイド: サイレントインストールのオプション一覧 · レジストリと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