Export (0) Print
Expand All
Collapse the table of content
Expand the table of content
Expand Minimize

Restart-Service

Updated: August 9, 2015

Restart-Service

Stops and then starts one or more services.

Syntax

Parameter Set: InputObject
Restart-Service [-InputObject] <ServiceController[]> [-Exclude <String[]> ] [-Force] [-Include <String[]> ] [-PassThru] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: Default
Restart-Service [-Name] <String[]> [-Exclude <String[]> ] [-Force] [-Include <String[]> ] [-PassThru] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: DisplayName
Restart-Service -DisplayName <String[]> [-Exclude <String[]> ] [-Force] [-Include <String[]> ] [-PassThru] [-Confirm] [-WhatIf] [ <CommonParameters>]




Detailed Description

The Restart-Service cmdlet sends a stop message and then a start message to the Windows Service Controller for a specified service. If a service was already stopped, it is started without notifying you of an error. You can specify the services by their service names or display names, or you can use the InputObject parameter to pass an object that represents each service that you want to restart.

Parameters

-DisplayName<String[]>

Specifies the display names of services to restarted. Wildcard characters are permitted.


Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Exclude<String[]>

Specifies services that this cmdlet omits. The value of this parameter qualifies the Name parameter. Enter a name element or pattern, such as s*. Wildcard characters are permitted.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Force

Forces the command to run without asking for user confirmation.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Include<String[]>

Specifies an array of services that this cmdlet restarts. The value of this parameter qualifies the Name parameter. Enter a name element or pattern, such as s*. Wildcard characters are permitted.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-InputObject<ServiceController[]>

Specifies an array of ServiceController objects that represent the services to restart. Enter a variable that contains the objects, or type a command or expression that gets the objects.


Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

true (ByValue)

Accept Wildcard Characters?

false

-Name<String[]>

Specifies the service names of the services to restart.


Aliases

ServiceName

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

true(ByValue,ByPropertyName)

Accept Wildcard Characters?

false

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.


Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Confirm

Prompts you for confirmation before running the cmdlet.


Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.


Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see    about_CommonParameters.

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

  • System.ServiceProcess.ServiceController, System.String

    You can pipe a service object or a string that contains a service name to this cmdlet.


Outputs

The output type is the type of the objects that the cmdlet emits.

  • None, System.ServiceProcess.ServiceController

    This cmdlet generates a System.ServiceProcess.ServiceController object that represents the restarted service, if you specify the PassThru parameter. Otherwise, this cmdlet does not generate any output.


Notes

  • Restart-Service can control services only when the current user has permission to do this. If a command does not work correctly, you might not have the required permissions.

  • To find the service names and display names of the services on your system, type Get-Service. The service names appear in the Name column, and the display names appear in the DisplayName column.

Examples

Example 1: Restart a service on the local computer

This command restarts the Windows Management Instrumentation service (WinMgmt) on the local computer.


PS C:\> Restart-Service -Name winmgmt

Example 2: Exclude a service

This command restarts the services that have a display name that starts with Net, except for the Net Logon service.


PS C:\> Restart-Service -DisplayName "net*" -Exclude "net logon"

Example 3: Start all stopped network services

This command starts all of the stopped network services on the computer.

This command uses the Get-Service cmdlet to get objects that represent the services whose service name starts with net. The pipeline operator (|) sends the services object to the Where-Object cmdlet, which selects only the services that have a status of stopped. Another pipeline operator sends the selected services to Restart-Service.

In practice, you would use the WhatIf parameter to determine the effect of the command before you run it.


PS C:\> Get-Service -Name "net*" | Where-Object {$_.Status -eq "Stopped"} | Restart-Service

Related topics

Community Additions

ADD
Show:
© 2016 Microsoft