Je ne sais pas pourquoi ce script ne fonctionne pas pour moi. Lorsque je tente de l'exécuter, il va juste à la ligne suivante et a « >> » à gauche au lieu de PS C: \ Users \ nom d'utilisateur>Script Powershell pour détecter le système d'exploitation et afficher les versions de SQL installées sur le système SI le système est un serveur
$Version = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\Currentversion" -Name Productname).Productname | if ($version -like "*server*") {Get-ItemProperty HKLM:\software\microsoft\windows\currentversion\uninstall\* | Where-Object {$_.displayname -match "sql server"}
Quelqu'un voit-ce que je l'ai fait mal ici? Je peux vérifier que les deux parties fonctionnent indépendamment, je semble juste avoir un problème quand je les mets ensemble avec une déclaration if.
Modifier: $version = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\Currentversion" -Name Productname).Productname ; if ($version -like "*server*") { Get-ItemProperty HKLM:\software\microsoft\windows\currentversion\uninstall\* | Where-Object {$_.displayname -match "sql server"} }
Cela a fonctionné!
Parce que vous avez 'if() {chose | où {} 'et manquent un'} '. et vous ne pouvez pas faire 'get-thing | si ... 'du tout – TessellatingHeckler
Y at-il un moyen de trouver la version du système d'exploitation et seulement sur les serveurs exécuter la commande pour afficher les versions SQL? – Maxadon
Avez-vous un répertoire actif? – ArcSet