エンジニアリングにはほど遠い

iPhoneアプリとかサイトとかをつくっていくブログです。

Windowsでchromeを落としてインストールするバッチファイル

Windowsマシンの設定自動化についてちょこちょこ調べてます。Windowsマシンは仕事でしかほとんど触らないのでなかなか慣れない。。

管理者権限で実行したらchromeのダウンロードからインストールまでやるバッチを作ってみました。powershellwget的な事をやってます。(.batと.ps1はマシン外の空間にあり、同階層という想定)

install_chrome.bat

@echo off
cd /d %~dp0
copy download_chrome.ps1 c:%homepath%\Desktop
powershell Set-ExecutionPolicy RemoteSigned
powershell c:%homepath%\Desktop\download_chrome.ps1
powershell Set-ExecutionPolicy Restricted
msiexec /i c:%homepath%\Desktop\chrome.msi /passive

line2: cd /d %~dp0 カレントディレクトリをバッチファイルの場所にする。
line3: 一旦ps1ファイルをローカルに持ってこないと動かなかったので。
line7: msiexecコマンドでmsiファイルからインストールできる。 /passiveで操作無し(インジケータとかのみ表示)

download_chrome.ps1

$clnt = new-object System.Net.WebClient
$url = "https://dl.google.com/dl/chrome/install/googlechromestandaloneenterprise64.msi"
$file = "$home\Desktop\chrome.msi"
$clnt.DownloadFile($url, $file)

powershell3.0より前のバージョンだとInvoke-WebRequestというものが無いらしいので記述したやり方で。windows7ではpowershell2.0が標準らしい