Nesta matéria mostrarei alguns comandos em Power Shell para gerenciar serviços do windows. Conheceremos alguns recursos de visualizar, parar e reiniciar os serviços.
Visualizando os serviços
Em PS (Power Shell) é muito simples visualizar os serviços, basta digitar o comando:
get-service
Filtrando os serviços a serem visualizados:
É provável que queiramos exibir apenas os serviços em execução ou apenas os parados, para isso, basta:
get-service | where-object { $_.Status -eq “Running” }
Como observa-se na imagem acima, apenas os serviços que estão executando (Running) são mostrados. Para ver apenas os serviços parados, basta trocar “Running” por “Stopped”
Exibir apenas serviços específicos
Caso necessite exibir apenas alguns serviços específicos, há duas maneiras de se fazer:
Maneira 1:
get-service | where-object { $_.Name -like “win*” }
Desta maneira será exibido todos os serviços cujos nomes começem com “win”
Veja o resultado:
Maneira 2:
Caso queira buscar um serviço específico basta digitar:
get-service nomeDoServiço
Veja o exemplo para exibição do serviço de FAX
Parando, Iniciando e Reiniciando um Serviço
No PS, assim como no CMD, é muito simples a sintaxe para se parar um Serviço, basta colocar:
stop-service nomeDoServiço
Veja o exemplo para stop-service Superfetch:
Vejamos agora para iniciar um serviço:
start-service nomeDoServiço
Vale ressaltar que não é possivel iniciar um serviço se ele estiver Desabilitado. Para tal, é necessário executar o set-service (Veremos a seguir) e colocá-lo em Automático ou Manual.
Vejamos o start do Superfetch:
Para reiniciar um serviço, basta colocarmos:
restart-service NomeDoServiço
O restart-service tem a mesma função do Stop-service seguido do start-service, com a vantagem de agregar os dois comandos em um só.
Alterando o modo de inicialização de um Serviço
No Power Shell é possível também alterar o modo que o serviço inicializa, tornando esta ferramenta a substituta do net-start e net-stop que apresenta funçõs mais limitadas. Para altermos o modo que um serviço inicia basta digitarmos:
set-service nomeDoServiço -StartupType Disabled
No comando acima deixamos o modo de inicialização Desativado. Os modos de inicialização são: Automático (Automatic), Desativado (Disable) e Manual (Manual). A seguir vemos o exemplo do comando para o serviço Fax:
Creio que com esses comandos a sua gerência de serviços do Windows em Scrips já ficou mais fácil. Espero que lhe tenha sido útil da mesma forma que foi para mim.
Obrigado e até a próxima.
1 Comentário. Deixe novo
Gostaria de saber como eu faço para incluir dependencias no serviço utilizando PowerShell.
Ex: ServiçoA só pode subir se o ServiçoB e ServçoC estiverem startados.