Win32_Process

来源:互联网 发布:商业源码网 编辑:程序博客网 时间:2024/06/05 01:09

To get a list of processes on your local computer:

Get-WmiObject -class Win32_Process

 

To get the values of related properties for the process sqlservr.exe, the SQL Server service:

Get-WmiObject -class Win32_Process | Where-Object{ ($_.Name –eq 'sqlservr.exe') } | Select-Object Caption, CommandLine, CreationDate, CSName, Desciption, ExecutablePath,Name, OSName, ParentProcessId, Priority, ProcessId, WindowsVersion

 

To show the output from the Get-Process cmdlet and the properties from the Win32_Process for the sqlservr.exe process:

Get-Process | Where-Object{$_.Name -eq 'sqlservr' }

Get-WmiObject -class Win32_Process | Where-Object{$_.Name -eq 'sqlservr.exe'} | foreach -process {"Handles: " + $_.HandleCount; "NPM(K): " + $_.QuotaNonPagedPoolUsage; "PM(K): " + $_.PageFileUsage; "WS(K): " + $_.WorkingSetSize/1024; "VM(M): " +$_.VirtualSize/1024/1024; "CPU(s): " +($_.KernelModeTime/10e6+$_.UserModeTime/10e6).ToString(); "Id: " + $_.ProcessId;"ProcessName: " + $_.Name}

 

To get a list of processes running on a remote computer:

Get-WmiObject –computerName RemoteHostName -class Win32_Process

 

To promote the priority of the SQL Server service of the default instance on the local computer:

$sqlprocess = Get-WmiObject -class Win32_Process | Where-Object{$_.Name -eq 'sqlservr.exe' -and $_.CommandLine -like '*-sMSSQLSERVER'}
"Priority of the process of the default SQL Server instance is " + $sqlprocess.Priority
$sqlprocess.SetPriority(128)         ////////////////////Only change the process the SQL Server service is currently running on
$sqlprocess = Get-WmiObject -class Win32_Process | Where-Object{$_.Name -eq 'sqlservr.exe' -and $_.CommandLine -like '*-sMSSQLSERVER'}
"Priority of the process of the default SQL Server instance is " + $sqlprocess.Priority

exec sp_configure ‘priority boost’, 1 reconfigure       //////////Affect any process the SQL Server service is associated with after it is enabled

 

To terminate a running Notepad process:

$proc=Get-WmiObject -class Win32_Process | Where-Object{$_.name -eq ‘notepad.exe’}
$proc.Terminate($proc.ProcessID)

 

To filter out the SQL Server service for the default instance based on the Name and CommandLine properties, and then invoke the Terminate method on the service:

$proc=Get-WmiObject -class Win32_Process | Where-Object{$_.Name -eq 'sqlservr.exe' -and $_.CommandLine -like '*-sMSSQLSERVER'}
$proc.Terminate($proc.ProcessID)