Start-Service

Démarre un ou plusieurs services arrêtés.

Syntax

Start-Service
     [-InputObject] <ServiceController[]>
     [-PassThru]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-Service
     [-Name] <String[]>
     [-PassThru]
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Start-Service
     [-PassThru]
     -DisplayName <String[]>
     [-Include <String[]>]
     [-Exclude <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

L’applet Start-Service de commande envoie un message de démarrage au contrôleur de service Windows pour chacun des services spécifiés. Si un service est déjà en cours d'exécution, le message est ignoré sans erreur. Vous pouvez spécifier les services par leurs noms de service ou noms d’affichage, ou vous pouvez utiliser le paramètre InputObject pour fournir un objet de service qui représente les services que vous souhaitez démarrer.

Exemples

Exemple 1 : Démarrer un service à l’aide de son nom

Cet exemple démarre le service EventLog sur l’ordinateur local. Le paramètre Name identifie le service par son nom de service.

Start-Service -Name "eventlog"

Exemple 2 : Afficher des informations sans démarrer un service

Cet exemple montre ce qui se produit si vous avez démarré les services dont le nom complet inclut « distant ».

Start-Service -DisplayName *remote* -WhatIf

Le paramètre DisplayName identifie les services par leur nom complet au lieu de leur nom de service. Le paramètre WhatIf provoque l’affichage de l’applet de commande lorsque vous exécutez la commande, mais ne apporte pas de modifications.

Exemple 3 : Démarrer un service et enregistrer l’action dans un fichier texte

Cet exemple montre comment démarrer le service WMI (Windows Management Instrumentation) sur l’ordinateur et ajouter un enregistrement de l’action au fichier services.txt.

$s = Get-Service wmi
Start-Service -InputObject $s -PassThru | Format-List >> services.txt

Tout d’abord, nous utilisons Get-Service pour obtenir un objet qui représente le service WMI et le stocker dans la $s variable. Ensuite, nous commençons le service. Sans le paramètre PassThru , Start-Service ne crée aucune sortie. L’opérateur de pipeline (|) transmet la sortie Start-Service de l’objet à l’applet de commande pour mettre l’objet Format-List en forme comme liste de ses propriétés. L’opérateur>> de redirection d’ajout () redirige la sortie vers le fichier services.txt. La sortie est ajoutée à la fin du fichier existant.

Exemple 4 : Démarrer un service désactivé

Cet exemple montre comment démarrer un service lorsque le type de démarrage du service est désactivé.

PS> Start-Service tlntsvr
Start-Service : Service 'Telnet (TlntSvr)' cannot be started due to the following error: Cannot start service TlntSvr on computer '.'.
At line:1 char:14
+ Start-Service  <<<< tlntsvr

PS> Get-CimInstance win32_service | Where-Object Name -eq "tlntsvr"
ExitCode  : 0
Name      : TlntSvr
ProcessId : 0
StartMode : Disabled
State     : Stopped
Status    : OK

PS> Set-Service tlntsvr -StartupType manual
PS> Start-Service tlntsvr

La première tentative de démarrage du service Telnet (tlntsvr) échoue. La Get-CimInstance commande indique que la propriété StartMode du service Tlntsvr est désactivée. L’applet Set-Service de commande modifie le type de démarrage en Manuel. Maintenant, nous pouvons renvoyer la Start-Service commande. Cette fois, elle réussit. Pour vérifier que la commande a réussi, exécutez Get-Service.

Paramètres

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Spécifie les noms d’affichage des services à démarrer. Les caractères génériques sont autorisés.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Exclude

Spécifie les services omis par cette applet de commande. La valeur de ce paramètre qualifie le paramètre Name . Entrez un élément de nom ou un modèle, par exemple s*. Les caractères génériques sont autorisés.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Include

Spécifie les services démarrés par cette applet de commande. La valeur de ce paramètre qualifie le paramètre Name . Entrez un élément de nom ou un modèle, par exemple s*. Les caractères génériques sont autorisés.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-InputObject

Spécifie les objets ServiceController représentant les services à démarrer. Entrez une variable contenant les objets, ou tapez une commande ou une expression qui obtient ces objets.

Type:ServiceController[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Spécifie le nom de service du service à démarrer.

Le nom de paramètre est facultatif. Vous pouvez utiliser Name ou son alias, ServiceName ou omettre le nom du paramètre.

Type:String[]
Aliases:ServiceName
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Retourne un objet qui représente le nouveau service. Par défaut, cette applet de commande ne génère aucun résultat.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

System.ServiceProcess.ServiceController, System.String

Vous pouvez diriger des objets qui représentent les services ou les chaînes qui contiennent les noms de service à cette applet de commande.

Sorties

None, System.ServiceProcess.ServiceController

Cette applet de commande génère un objet System.ServiceProcess.ServiceController qui représente le service, si vous spécifiez PassThru. Sinon, cette applet de commande ne génère aucune sortie.

Notes

Cette applet de commande est disponible uniquement sur les plateformes Windows.

  • Vous pouvez également faire référence à Start-Service son alias intégré. sasv Pour plus d’informations, consultez about_Aliases.
  • Start-Service peut contrôler les services uniquement si l’utilisateur actuel a l’autorisation de procéder. Si une commande ne fonctionne pas correctement, cela signifie peut-être que vous ne disposez pas des autorisations requises.
  • Pour rechercher les noms de service et les noms d’affichage des services sur votre système, tapez Get-Service. Les noms de service apparaissent dans la colonne Nom et les noms d’affichage apparaissent dans la colonne DisplayName .
  • Vous pouvez démarrer uniquement les services qui ont un type de démarrage manuel, automatique ou automatique (démarrage différé). Vous ne pouvez pas démarrer les services qui ont un type de début désactivé. Si une Start-Service commande échoue avec le message Cannot start service \<service-name\> on computer, utilisez Get-CimInstance pour rechercher le type de début du service et, si vous devez, utiliser l’applet Set-Service de commande pour modifier le type de démarrage du service.
  • Certains services, tels le service Journaux et alertes de performance (Sysmonlog), s'arrêtent automatiquement lorsqu'ils n'ont aucune tâche à exécuter. Lorsque PowerShell démarre un service qui s’arrête presque immédiatement, il affiche le message suivant : Service \<display-name\> start failed.