共用方式為


Restart-Service

停止,然後啟動一或多個服務。

語法

InputObject (預設值)

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

Default

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

DisplayName

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

Description

此 Cmdlet 只能在 Windows 平臺上使用。

Restart-Service Cmdlet 會傳送停止訊息,然後將啟動訊息傳送至指定服務的 Windows 服務控制器。 如果服務已停止,則會啟動,而不會通知您錯誤。 您可以依服務名稱或顯示名稱來指定服務,也可以使用 InputObject 參數來傳遞代表您要重新啟動之每個服務的 物件。

範例

範例 1:重新啟動本機電腦上的服務

PS C:\> Restart-Service -Name winmgmt

此命令會重新啟動本機電腦上的 Windows Management Instrumentation 服務 (WinMgmt)。

範例 2:排除服務

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

此命令會重新啟動顯示名稱開頭為 Net 的服務,但 Net Logon 服務除外。

範例 3:啟動所有已停止的網路服務

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

此命令會啟動電腦上所有已停止的網路服務。

此命令會使用 Get-Service Cmdlet 來取得對象,這些物件代表服務名稱開頭為 net 的服務。 管線運算符 (|) 會將 services 物件傳送至 Where-Object Cmdlet,該 Cmdlet 只會選取狀態為已停止的服務。 另一個管線運算子會將選取的服務傳送至 Restart-Service

在實務上,您會使用 WhatIf 參數來判斷命令的效果,再執行命令。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:cf

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-DisplayName

指定要重新啟動之服務的顯示名稱。 允許使用通配符字元。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

DisplayName
Position:Named
必要:True
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Exclude

指定此 Cmdlet 省略的服務。 此參數的值用來說明 Name 參數。 輸入名稱專案或模式,例如 s*。 允許使用通配符字元。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Force

強制命令執行,而不要求使用者確認。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Include

指定此 Cmdlet 重新啟動的服務。 此參數的值用來說明 Name 參數。 輸入名稱專案或模式,例如 s*。 允許使用通配符字元。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-InputObject

指定要重新啟動之服務的 ServiceController 物件。 輸入包含 物件的變數,或輸入取得物件的命令或表達式。

參數屬性

類型:

ServiceController[]

預設值:None
支援萬用字元:False
不要顯示:False

參數集

InputObject
Position:0
必要:True
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Name

指定要重新啟動之服務的服務名稱。

參數屬性

類型:

String[]

預設值:None
支援萬用字元:True
不要顯示:False
別名:服務名稱

參數集

Default
Position:0
必要:True
來自管線的值:True
來自管線按屬性名稱的值:True
來自剩餘引數的值:False

-PassThru

傳回一個代表服務的物件。 根據預設,此 Cmdlet 不會產生任何輸出。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 指令未執行。

參數屬性

類型:SwitchParameter
預設值:False
支援萬用字元:False
不要顯示:False
別名:無線

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

ServiceController

您可以透過管道傳遞服務物件到此 cmdlet。

String

您可以使用管線將包含服務名稱的字串傳送至此「Cmdlet」。

輸出

None

根據預設,此 Cmdlet 不會傳回任何輸出。

ServiceController

當您使用 PassThru 參數時,這個 Cmdlet 會傳回代表重新啟動服務的 ServiceController 物件。

備註

此 Cmdlet 僅適用於 Windows 平臺。

  • Restart-Service 只有在目前用戶有權執行這項作時,才能控制服務。 如果命令無法正常運作,您可能沒有必要的許可權。
  • 若要在您的系統上尋找服務名稱和顯示名稱,請輸入 Get-Service” 服務名稱會出現在 [Name] 資料行中,而顯示名稱會出現在 DisplayName 數據行中。