J'essaie d'afficher le nom (juste le nom) de tous les services installés contenant la chaîne "SQL". Par exemple, je veux voir
donc j'essaie ceci: p> Ceci affiche tous les services, mais comme une liste. P> @{Name=BcmSqlStartupSvc}
@{Name=MSOLAP$SQL2008_R2}
@{Name=MSSQL$SQL2008_R2}
(etc ...)
3 Réponses :
Le moyen le plus simple d'atteindre qui utilise Si vous voulez aller avec votre code uniquement, voici la façon dont vous pouvez Modifiez-le: P> -filter code> paramètre Get-WmiObject Win32_Service | Select-Object -ExpandProperty Name |
Select-String -pattern 'SQL'
Merci. Mes prochaines tâches d'apprentissage consiste à comprendre la différence entre "Select-Object -ExpandProperty Name" et "Select-Object {$ _. Nom}"
Vous pouvez utiliser get-service à la place de Get-WMIObject et le faire comme ceci "
get-service sql* | select -expand name
Pour revenir (ou liste) plusieurs propriétés, utilisez Select-Object et des propriétés séparées par virgule tels que Get-Service SQL * | Nom de sélection-objet, displayName code>
Get-Service | Where-Object {$_.Name -match "SQL"} |Select-Object Name
AFAIK C'est le moyen le plus simple que si vous devez exécuter une regex sérieuse pour correspondre à un certain nom