Partager via


Start-Service

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

Syntaxe

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

Cette applet de commande est disponible uniquement sur la plateforme Windows.

L’applet de commande Start-Service 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 produirait si vous avez démarré les services dont le nom d’affichage inclut « remote ».

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 entraîne l’affichage de l’applet de commande lorsque vous exécutez la commande, mais n’apporte pas de modifications.

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

Cet exemple démarre le service WMI (Windows Management Instrumentation) sur l’ordinateur et ajoute 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 variable $s. 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 de l’objet par Start-Service à l’applet de commande Format-List pour mettre l’objet en forme comme liste de ses propriétés. L’opérateur de redirection append (>>) 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 commande Get-CimInstance indique que la propriété StartMode du service Tlntsvr est Désactivé. L’applet de commande Set-Service modifie le type de démarrage en manuel. À présent, nous pouvons renvoyer la commande Start-Service. Cette fois, la commande réussit. Pour vérifier que la commande a réussi, exécutez Get-Service.

Paramètres

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DisplayName

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

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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, tel que s*. Les caractères génériques sont autorisés.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:True

-Include

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

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:True

-InputObject

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

Type:ServiceController[]
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Name

Spécifie les noms du service à démarrer.

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

Type:String[]
Alias:ServiceName
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-PassThru

Retourne un objet qui représente le service. Par défaut, cette applet de commande ne génère aucune sortie.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

ServiceController

Vous pouvez diriger un objet de service vers cette applet de commande.

String

Vous pouvez diriger une chaîne qui contient le nom du service vers cette applet de commande.

Sorties

None

Par défaut, cette applet de commande ne retourne aucune sortie.

ServiceController

Lorsque vous utilisez le paramètre PassThru, cette applet de commande retourne un objet ServiceController représentant le service.

Notes

PowerShell inclut les alias suivants pour Start-Service:

  • Windows:
    • sasv

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

  • Par défaut, seuls les membres du groupe Administrateurs peuvent démarrer, arrêter, suspendre, reprendre ou redémarrer un service. Si vous êtes membre du groupe Administrateurs, vous devez exécuter Start-Service à partir d’une session PowerShell avec élévation de privilèges. Utilisez l’option Exécuter en tant qu’administrateur pour démarrer PowerShell.
  • 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 ne pouvez démarrer que 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 dont le type de démarrage est Désactivé. Si une commande Start-Service échoue avec le message Cannot start service \<service-name\> on computer, utilisez Get-CimInstance pour rechercher le type de démarrage du service et, si vous le souhaitez, utilisez l’applet de commande Set-Service pour modifier le type de démarrage du service.
  • Certains services, tels que les journaux de performances et les alertes (SysmonLog) s’arrêtent automatiquement s’ils n’ont pas de travail à faire. Lorsque PowerShell démarre un service qui s’arrête presque immédiatement, il affiche le message suivant : Service \<display-name\> start failed.