
рд╣рдо PowerShell рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Windows рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдкрд░
4sysops.com рдкреЛрд░реНрдЯрд▓ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд▓реЗрдЦреЛрдВ рдХреЗ рдЕрдиреБрд╡рд╛рджреЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред рдкрд┐рдЫрд▓реЗ рджреЛ рдкрджреЛрдВ рдореЗрдВ, рд╕реНрдерд╛рдиреАрдп рдФрд░ рджреВрд░рд╕реНрде рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ (
рдпрд╣рд╛рдВ ) рдФрд░ рд╕реЗрд╡рд╛ рдкреНрд░рдмрдВрдзрди рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдмрд┐рдВрджреБ (рдкреНрд░рд╛рд░рдВрдн, рд░реЛрдХ, рдард╣рд░рд╛рд╡, рдЖрджрд┐) рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдореБрджреНрджреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдкреЛрд╕реНрдЯ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рджреВрд░рд╕реНрде рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП WMI рдФрд░ CIM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ:PowerShell рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрдиред рднрд╛рдЧ 1. рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛PowerShell рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрдиред рднрд╛рдЧ 2. рд░реЛрдХрдирд╛, рд╢реБрд░реВ рдХрд░рдирд╛, рд░реЛрдХрдирд╛рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВрдиреЗ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╕реЗрдЯ-рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рд╕реАрдорд╛рдПрдВ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╣рдо рджреВрд░рд╕реНрде рдорд╢реАрдиреЛрдВ рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐
рдЧреЗрдЯ-рд╕рд░реНрд╡рд┐рд╕ рдФрд░
рд╕реЗрдЯ-рд╕рд░реНрд╡рд┐рд╕ рдЬреИрд╕реЗ cmdlets рдХреЛ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ - System.ServiceProcess.ServiceController рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрдХреНрдд рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ, рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдЗрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдХреА рдПрдХ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕ рдЦрд╛рддреЗ рдХреЗ рддрд╣рдд рд╕реЗрд╡рд╛ рдЪрд▓ рд░рд╣реА рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╡рд┐рдВрдбреЛрдЬ рдореИрдиреЗрдЬрдореЗрдВрдЯ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯреЗрд╢рди (WMI) рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдЖрддрд╛ рд╣реИред
WMI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рд╣рдо рдХрд┐рд╕реА рд╕реЗрд╡рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
Get-WmiObject рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ 8 рдкрд░ PS 3.0 рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рдорд╛рди рдХрдорд╛рдВрдб PS 2.0 рдкрд░ рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрди рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЦреЛрдЬреЗрдВ рдЬрд┐рдирдХреА рдХрдХреНрд╖рд╛ Win32_Service рд╣реИред
PS C:\> get-wmiobject win32_service | format-table

рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╕реНрд╡рд░реВрдкрд┐рдд рдХрд┐рдпрд╛ред рдЕрдм рдПрдХ рдЕрд▓рдЧ рд╕реЗрд╡рд╛ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВред
PS C:\> get-wmiobject win32_service -filter "name='bits'" ExitCode : 0 Name : BITS ProcessId : 876 StartMode : Auto State : Running Status : OK
рдЕрдиреНрдп рдЧреБрдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
PS C:\> get-wmiobject win32_service -filter "name='bits'" | Select *
рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЕрдм рдЖрдк рд╕реЗрд╡рд╛ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдФрд░ рдЖрдк
тАУFilter рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпреЛрдЧреНрдп рдХреНрд╡реЗрд░реА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
StartMode рд╕рдВрдкрддреНрддрд┐ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рд╕реЗрд╡рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ рдпрд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╢реБрд░реВ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдЬрдм рдЖрдкрдХреЛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдирд┐рдореНрди рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
PS C:\> get-wmiobject win32_service -filter "StartMode <>'disabled'" | sort StartMode | format-table -GroupBy StartMode -Property Name,State,PathName -AutoSize
рдХрдорд╛рдВрдб рд╣рдореЗрдВ рдирдИ рдкреНрд░рдореБрдЦ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓реЛрдб рдХреЗ рдкреНрд░рдХрд╛рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рддрд╛рд▓рд┐рдХрд╛ рджрд┐рдЦрд╛рдПрдЧрд╛ред рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдЪрд▓рд╛рдПрдВ рдФрд░ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦреЗрдВред
PS C:\> get-wmiobject win32_service -filter "startmode='auto' AND state<>'Running'" | Select Name,State Name State ---- ----- MMCSS Stopped RemoteRegistry Stopped sppsvc Stopped wuauserv Stopped
рдореИрдВ рд╕реНрдерд╛рдиреАрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рджреВрд░рд╕реНрде рдорд╢реАрдиреЛрдВ рдкрд░ рднреА рдпрд╣реА рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
PS C:\> get-wmiobject win32_service -filter "startmode='auto' AND state<>'Running'" -computername chi-dc01,chi-dc02,chi-dc03 | Select Name,State,Systemname Name State Systemname ---- ----- ---------- sppsvc Stopped CHI-DC01 sppsvc Stopped CHI-DC02 VMTools Stopped CHI-DC02 RemoteRegistry Stopped CHI-DC03 ShellHWDetection Stopped CHI-DC03 sppsvc Stopped CHI-DC03 wuauserv Stopped CHI-DC03
рд╣рдореЗрдВ рд╡рд╣ рдЦрд╛рддрд╛ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рддрд╣рдд рд╕реЗрд╡рд╛ рдЪрд▓ рд░рд╣реА рд╣реИ
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, WMI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рд╡рд╣ рдЦрд╛рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рддрд╣рдд рд╕реЗрд╡рд╛ рдЪрд▓ рд░рд╣реА рд╣реИред WMI рдореЗрдВ, рдпрд╣
Startname рдЧреБрдг рд╣реИред
PS C:\> get-wmiobject win32_service -comp chi-ex01 | group startname Count Name Group ----- ---- ----- 95 localSystem {\\CHI-EX01\root\cimv2:Win32_Service.Name="AeLook... 36 NT AUTHORITY\LocalService {\\CHI-EX01\root\cimv2:Win32_Service.Name="ALG", ... 24 NT AUTHORITY\NetworkSe... {\\CHI-EX01\root\cimv2:Win32_Service.Name="aspnet...
рдФрд░ рд╣рд╛рдВ, рдЖрдк рдЗрд╕ рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдпрджрд┐ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЦрд╛рддреЗ рдХреЗ рддрд╣рдд рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рд╕реЗрд╡рд╛рдУрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдбреЛрдореЗрди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХред
PS C:\> get-wmiobject win32_service -computer $computers -filter "startname like '%administrator%'"| Select Name,startmode,state,startname,systemname Name : BITS startmode : Manual state : Stopped startname : .\Administrator systemname : CHI-EX01 Name : PeerDistSvc startmode : Manual state : Stopped startname : Administrator@GLOBOMANTICS.local systemname : CHI-WIN8-01
рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде, рдореИрдВрдиреЗ рдЙрди рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдкрд╛рдпрд╛ рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЦрд╛рддреЗ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЪрд▓ рд░рд╣реА рд╣реИрдВред
рд╣рдо CIM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
PowerShell 3.0 рдореЗрдВ, рдЖрдк рд╕рдорд╛рди рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
CIM cmdlets рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред CIM рдХреЗ рд▓рд╛рдн PowerShell рдХреЗ рд╕рд╛рде рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред
PS C:\> get-ciminstance win32_service -comp chi-dc01

рдлрд┐рд▓реНрдЯрд░ рдПрдХ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
PS C:\> get-ciminstance win32_service -filter "startmode='auto' AND state<>'Running'" -comp chi-ex01 | Select Name,State,Systemname Name State Systemname ---- ----- ---------- clr_optimization_v4.0.30319_32 Stopped CHI-EX01 clr_optimization_v4.0.30319_64 Stopped CHI-EX01 MSExchangeProtectedServiceHost Stopped CHI-EX01 MSExchangeRPC Stopped CHI-EX01 MSExchangeSA Stopped CHI-EX01 MSExchangeServiceHost Stopped CHI-EX01 ShellHWDetection Stopped CHI-EX01 sppsvc Stopped CHI-EX01
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рд╣рдо рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдЙрдирд╕реЗ рдФрд░ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗред
рдкрд░рд┐рдгрд╛рдо
WMI рдпрд╛ CIM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрдкрдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕реЗрд╡рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред Win32_Service рд╡рд░реНрдЧ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк
-рдЬреЙрдмреНрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдЗрд╕реЗ рд╣рдореЗрд╢рд╛
рдЧреЗрдЯ-рд╕рд░реНрд╡рд┐рд╕ рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо WMI рдФрд░ CIM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рджреЗрдЦреЗрдВрдЧреЗред
рдпреБрдкреАрдбреА:
рдкреЛрд╕реНрдЯ рдкреЛрд░реНрдЯрд▓
4sysops.com рд╕реЗ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
PowerShell рддрд░реАрдХреЗ рд╕реЗ рд╕реЗрд╡рд╛рдПрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ - рднрд╛рдЧ 5рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ:PowerShell рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрдиред рднрд╛рдЧ 1. рд╕реЗрд╡рд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛PowerShell рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрдиред рднрд╛рдЧ 2. рд░реЛрдХрдирд╛, рд╢реБрд░реВ рдХрд░рдирд╛, рд░реЛрдХрдирд╛