windows - NET START < SERVICE > - hvordan/hvor skal man få servicenavnet?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg skal oprette et almindeligt script for at genstarte tjenesten:


net stop <service>
net start <service>


Problemet er, at jeg ikke kender navnet på tjenesten.
For eksempel til 'printer spooler' er navnet 'spooler'.


Hvordan kan jeg finde navnet på enhver tjeneste?

Bedste reference


Jeg får det fra registreringsdatabasen: HKLM \ System \ CurrentControlSet \ Services. Hver undernøgle er navnet på en tjeneste eller en driver. Bare søg efter den du leder efter.

Andre referencer 1


Start-> Kør (skriv derefter): services.msc
Dobbeltklik på den service, du er interesseret i. Du skal se


Indtast billedbeskrivelse her

Andre referencer 2


Brug sc i stedet for net, da det kan prale af mange flere funktioner. Det blev først introduceret (IIRC) i Windows XP: [15]


sc GetKeyName "printer spooler"


skulle skrive noget som:


[SC] GetServiceKeyName SUCCESS  Name = Spooler


Og så kan du bruge det navn i andre kommandoer, som sc start og sc stop.

Andre referencer 3


For systemer, der har adgang til PowerShell. En bedre måde at gøre dette på er med Cmdlet 'Get-Service'. Du kan påberåbe det ved at skrive:


Get-Service -DisplayName "Print Spooler"


Hvilket kommer tilbage:


Status   Name               DisplayName
------   ----               -----------
Running  Spooler            Print Spooler


Hvor du får navnet på tjenesten under Navn. Parameteren DisplayName kan tage vildt kort, hvis du vil.
Hvis du vil have displaynavnet, kan du skrive:


 Get-Service -Name spooler


Hvilket ville returnere det samme bord som ovenfor. Du kan også skrive:


(Get-Service -DisplayName "Print Spooler").Name


For blot at få navnet (undgå et bord).


Dette er virkelig kun nødvendigt at gøre for at kontrollere, om en tjeneste kører. PowerShell har Cmdlet Start-service og Stop-Service, der tager parameteren -Name og -DisplayName, så du kan skrive:


Start-Service -DisplayName "Print Spooler"
Stop-Service -DisplayName "Print Spooler"


At starte og stoppe tjenesten.


I dette tilfælde har jeg brugt PowerShell 2.0, så jeg antager, at det vil fungere på alle Windows over og herunder XP.