我需要建立一個共同的腳本來重新啓動服務:NET START <SERVICE> - 如何/在哪裏獲取服務名稱?
net stop <service>
net start <service>
問題是,我不知道該服務的名稱。 例如「printer spooler
」是名稱「spooler
」。
如何找到任何服務的名稱?
我需要建立一個共同的腳本來重新啓動服務:NET START <SERVICE> - 如何/在哪裏獲取服務名稱?
net stop <service>
net start <service>
問題是,我不知道該服務的名稱。 例如「printer spooler
」是名稱「spooler
」。
如何找到任何服務的名稱?
我從註冊表獲得:HKLM \ System \ CurrentControlSet \ Services。每個子項都是服務或驅動程序的名稱。只要搜索你正在尋找的那個。
使用sc
而不是net
,因爲它擁有更多的功能。這是第一次推出(IIRC)在Windows XP:
sc GetKeyName "printer spooler"
應打印類似:
[SC] GetServiceKeyName SUCCESS Name = Spooler
然後你就可以在其他命令中使用這個名字,像sc start
和sc stop
。
對於訪問PowerShell的系統。更好的方法是使用Cmdlet「Get-Service」。您可以通過鍵入調用它:
Get-Service -DisplayName "Print Spooler"
將返回:
Status Name DisplayName
------ ---- -----------
Running Spooler Print Spooler
你在哪裏得到下名稱服務的名稱。如果你喜歡,DisplayName參數可以使用通配符。 如果你想獲得的顯示名稱,你可以寫:
Get-Service -Name spooler
這將返回與上述相同的表。你也可以這樣寫:
(Get-Service -DisplayName "Print Spooler").Name
得到的只是名字(避開表格)。
這實際上只是檢查服務是否正在運行。 PowerShell中有該cmdlet啓動服務和停止,服務,採用參數和雜牌這樣-DisplayName你可以寫:
Start-Service -DisplayName "Print Spooler"
Stop-Service -DisplayName "Print Spooler"
要啓動和停止服務。
在這種情況下,我使用PowerShell 2.0,所以我想它可以在任何Windows上面運行,包括XP。
查看[此問題](http://superuser.com/questions/315166/net-start-service-and-sc-start-what-is-the-difference)兩者之間的差異。 – kmote