Powershell ile MSI paketi yükleme
Powershell ile MSI paketi diğer bir ifadeyle MSI dosyası yükleme işlemi nasıl yapılır. Kolaydan detaya doğru gidelim.
Powershell üzerinde MSI dosyasının yer aldığı klasör içerisine gidin.
Örneğin : C:\tmp
1- MSI dosyasını Powershell ile çalıştırma
1 |
.\putty-installer.msi |
2-Sessiz kurulum
1 |
msiexec.exe /I C:\tmp\putty-installer.msi /quiet |
3- Kurulum sonrası otomatik restart etsin
1 |
msiexec.exe /I C:\tmp\putty-installer.msi /qb!- REBOOTPROMPT=S |
4- Log dosyası yaratarak MSI paketi yükleme
1 |
msiexec.exe /I C:\tmp\putty-installer.msi /L*V "C:\tmp\msi-install.log" |
5- Powershell Job olarak MSI paketi yükleme
1 |
$MYJOB = Start-Job -ScriptBlock { msiexec.exe /I 'C:\tmp\putty-installer.msi' /quiet } |
6- MSI paketi için Powershell Script ile yükleme
1 2 3 |
$MYMSI="C:\tmp\putty-installer.msi" $MYARGS="/I $MYMSI /quiet" Start-Process "msiexec.exe" -ArgumentList $MYARGS -wait -nonewwindow |
7- MSI paketi ile yüklenmiş tüm uygulamaları görme
1 2 3 |
$INSTALLED = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, UninstallString $INSTALLED += Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, UninstallString $INSTALLED | ?{ $_.DisplayName -ne $null -and $_.UninstallString -match 'msiexec' } | sort-object -Property DisplayName -Unique | Format-Table -AutoSize |
8- Kurulmuş olan MSI paketini repair etme
1 |
msiexec.exe /fa "C:\tmp\putty-installer.msi" |
9- Kurulmuş olan MSI paketini uninstall etme
1 |
msiexec.exe /x "C:\tmp\putty-installer.msi" |
10- (Bonus) Aşağıdaki örnekte yalnızca Powershell kullanılarak (Powershell administrator olarak çalıştırılmalı) bir websitesinden msi dosyası indirme ve indirilen msi dosyasının otomatik kurulmasını sağlama sonra ise indirilen msi dosyasının silinmesini sağlayan bir örnek komut göreceksiniz
Örneğimizde AzureCLI indiriliyor, msi paketi kuruluyor, sonrasında ise indirilen azurecli.msi dosyası remove ediliyor
1 |
Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; rm .\AzureCLI.msi |