ローカルPCまたはリモートPCの実行中のプロセスを取得するには、Get-Processを使います。
構文
Get-Process -Name [プロセス名]
Get-Process -Id [プロセスID]
Get-Process -Id [プロセスID]
まず、単純にローカルPCの実行中のプロセス一覧を表示させるには下記のようにします。
PS C:\> Get-Process
結果はこのようになります。
次に名前を指定してプロセス一覧を表示させます。
たとえば、exで始まるプロセス一覧を表示させるには以下のようにします。
PS C:\> Get-Process -Name ex*
結果はこのようになります。
次にプロセスIDを指定して表示させます。
上で表示させたExcelのIDを指定してみたいと思います。
PS C:\> Get-Process -Id 10048
結果はこのようになります。
次に実行ファイルのバージョンを表示させるには下記のようにします。
PS C:\> Get-Process -Name excel -FileVersionInfo
結果はこのようになります。
次に、プロセスの詳細情報を表示させるには下記のようにします。
PS C:\> Get-Process -Name excel | Format-List *
結果はこのようになります。
Name : EXCEL Id : 10048 PriorityClass : Normal FileVersion : 15.0.4875.1000 HandleCount : 799 WorkingSet : 66961408 PagedMemorySize : 27009024 PrivateMemorySize : 27009024 VirtualMemorySize : 535175168 TotalProcessorTime : 00:00:02.5000000 SI : 15 Handles : 799 VM : 535175168 WS : 66961408 PM : 27009024 NPM : 48592 Path : C:\Program Files (x86)\Microsoft Office\Office15\EXCEL.EXE Company : Microsoft Corporation CPU : 2.5 ProductVersion : 15.0.4875.1000 Description : Microsoft Excel Product : Microsoft Office 2013 __NounName : Process BasePriority : 8 ExitCode : HasExited : False ExitTime : Handle : 2788 SafeHandle : Microsoft.Win32.SafeHandles.SafeProcessHandle MachineName : . MainWindowHandle : 132852 MainWindowTitle : Book1 - Excel MainModule : System.Diagnostics.ProcessModule (EXCEL.EXE) MaxWorkingSet : 1413120 MinWorkingSet : 204800 Modules : {System.Diagnostics.ProcessModule (EXCEL.EXE), System.Diagnostics.ProcessModule (ntdll.dll), System.Diagnostics.ProcessModule (wow64.dll), System.Diagnostics.ProcessModule (wow64win.dll)...} NonpagedSystemMemorySize : 48592 NonpagedSystemMemorySize64 : 48592 PagedMemorySize64 : 27009024 PagedSystemMemorySize : 938696 PagedSystemMemorySize64 : 938696 PeakPagedMemorySize : 115884032 PeakPagedMemorySize64 : 115884032 PeakWorkingSet : 141869056 PeakWorkingSet64 : 141869056 PeakVirtualMemorySize : 684355584 PeakVirtualMemorySize64 : 684355584 PriorityBoostEnabled : True PrivateMemorySize64 : 27009024 PrivilegedProcessorTime : 00:00:01.0156250 ProcessName : EXCEL ProcessorAffinity : 255 Responding : True SessionId : 15 StartInfo : System.Diagnostics.ProcessStartInfo StartTime : 2016/11/26 17:44:43 SynchronizingObject : Threads : {6328, 6912, 12548, 9032...} UserProcessorTime : 00:00:01.4843750 VirtualMemorySize64 : 535175168 EnableRaisingEvents : False StandardInput : StandardOutput : StandardError : WorkingSet64 : 66961408 Site : Container :
最後にそのプロセスによりロードされているモジュールを表示させるには下記のようにします。
PS C:\> Get-Process -Name excel -Module
結果はこのようになります。
<関連記事>
【PowerShell】プロセスの停止を待つ
【PowerShell】プロセスをデバッグする
【PowerShell】プロセスを開始する
【PowerShell】実行中のプロセスを停止する
【PowerShell】サービスを開始する
スポンサーリンク