-
Notifications
You must be signed in to change notification settings - Fork 1
/
Get-Process.help.maml
618 lines (614 loc) · 81.6 KB
/
Get-Process.help.maml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
<command:command xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
<command:details>
<command:name>Get-Process</command:name>
<maml:description>
<maml:para>Gets the processes that are running on the local computer or a remote computer.</maml:para>
</maml:description>
<maml:copyright>
<maml:para />
</maml:copyright>
<command:verb>Get</command:verb>
<command:noun>Process</command:noun>
<dev:version />
</command:details>
<maml:description>
<maml:para>The Get-Process cmdlet gets the processes on a local or remote computer.</maml:para>
<maml:para>Without parameters, Get-Process gets all of the processes on the local computer. You can also specify a particular process by process name or process ID (PID) or pass a process object through the pipeline to Get-Process.</maml:para>
<maml:para>By default, Get-Process returns a process object that has detailed information about the process and supports methods that let you start and stop the process. You can also use the parameters of Get-Process to get file version information for the program that runs in the process and to get the modules that the process loaded.</maml:para>
</maml:description>
<command:syntax>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="false" variableLength="true" globbing="true" pipelineInput="True (ByPropertyName)" position="1" aliases="ProcessName">
<maml:name>Name</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process name. You can type multiple process names (separated by commas) and use wildcard characters. The parameter name ("Name") is optional.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
</command:parameter>
<command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="Cn">
<maml:name>ComputerName</maml:name>
<maml:description>
<maml:para>Gets the processes running on the specified computers. The default is the local computer.</maml:para>
<maml:para>Type the NetBIOS name, an IP address, or a fully qualified domain name of one or more computers. To specify the local computer, type the computer name, a dot (.), or "localhost".</maml:para>
<maml:para>This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of Get-Process even if your computer is not configured to run remote commands.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="FV,FVI">
<maml:name>FileVersionInfo</maml:name>
<maml:description>
<maml:para>Gets the file version information for the program that runs in the process. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the FileVersionInfo and ComputerName parameters of the Get-Process cmdlet in the same command. To get file version information for a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>Using this parameter is equivalent to getting the MainModule.FileVersionInfo property of each process object. When you use this parameter, Get-Process returns a FileVersionInfo object (System.Diagnostics.FileVersionInfo), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>Module</maml:name>
<maml:description>
<maml:para>Gets the modules that have been loaded by the processes. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the Module and ComputerName parameters of the Get-Process cmdlet in the same command. To get the modules that have been loaded by a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>This parameter is equivalent to getting the Modules property of each process object. When you use this parameter, Get-Process returns a ProcessModule object (System.Diagnostics.ProcessModule), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process. </maml:para>
<maml:para>When you use both the Module and FileVersionInfo parameters in the same command, Get-Process returns a FileVersionInfo object with information about the file version of all modules.</maml:para>
</maml:description>
</command:parameter>
</command:syntaxItem>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="Cn">
<maml:name>ComputerName</maml:name>
<maml:description>
<maml:para>Gets the processes running on the specified computers. The default is the local computer.</maml:para>
<maml:para>Type the NetBIOS name, an IP address, or a fully qualified domain name of one or more computers. To specify the local computer, type the computer name, a dot (.), or "localhost".</maml:para>
<maml:para>This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of Get-Process even if your computer is not configured to run remote commands.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="FV,FVI">
<maml:name>FileVersionInfo</maml:name>
<maml:description>
<maml:para>Gets the file version information for the program that runs in the process. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the FileVersionInfo and ComputerName parameters of the Get-Process cmdlet in the same command. To get file version information for a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>Using this parameter is equivalent to getting the MainModule.FileVersionInfo property of each process object. When you use this parameter, Get-Process returns a FileVersionInfo object (System.Diagnostics.FileVersionInfo), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>Module</maml:name>
<maml:description>
<maml:para>Gets the modules that have been loaded by the processes. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the Module and ComputerName parameters of the Get-Process cmdlet in the same command. To get the modules that have been loaded by a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>This parameter is equivalent to getting the Modules property of each process object. When you use this parameter, Get-Process returns a ProcessModule object (System.Diagnostics.ProcessModule), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process. </maml:para>
<maml:para>When you use both the Module and FileVersionInfo parameters in the same command, Get-Process returns a FileVersionInfo object with information about the file version of all modules.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="named" aliases="">
<maml:name>InputObject</maml:name>
<maml:description>
<maml:para>Specifies one or more process objects. Enter a variable that contains the objects, or type a command or expression that gets the objects.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Process[]</command:parameterValue>
</command:parameter>
</command:syntaxItem>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="Cn">
<maml:name>ComputerName</maml:name>
<maml:description>
<maml:para>Gets the processes running on the specified computers. The default is the local computer.</maml:para>
<maml:para>Type the NetBIOS name, an IP address, or a fully qualified domain name of one or more computers. To specify the local computer, type the computer name, a dot (.), or "localhost".</maml:para>
<maml:para>This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of Get-Process even if your computer is not configured to run remote commands.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="FV,FVI">
<maml:name>FileVersionInfo</maml:name>
<maml:description>
<maml:para>Gets the file version information for the program that runs in the process. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the FileVersionInfo and ComputerName parameters of the Get-Process cmdlet in the same command. To get file version information for a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>Using this parameter is equivalent to getting the MainModule.FileVersionInfo property of each process object. When you use this parameter, Get-Process returns a FileVersionInfo object (System.Diagnostics.FileVersionInfo), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>Module</maml:name>
<maml:description>
<maml:para>Gets the modules that have been loaded by the processes. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the Module and ComputerName parameters of the Get-Process cmdlet in the same command. To get the modules that have been loaded by a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>This parameter is equivalent to getting the Modules property of each process object. When you use this parameter, Get-Process returns a ProcessModule object (System.Diagnostics.ProcessModule), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process. </maml:para>
<maml:para>When you use both the Module and FileVersionInfo parameters in the same command, Get-Process returns a FileVersionInfo object with information about the file version of all modules.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="PID">
<maml:name>Id</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process ID (PID). To specify multiple IDs, use commas to separate the IDs. To find the PID of a process, type "get-process".</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Int32[]</command:parameterValue>
</command:parameter>
</command:syntaxItem>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="PID">
<maml:name>Id</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process ID (PID). To specify multiple IDs, use commas to separate the IDs. To find the PID of a process, type "get-process".</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Int32[]</command:parameterValue>
</command:parameter>
<command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>IncludeUserName</maml:name>
<maml:description>
<maml:para>Specifies that the UserName value of the Process object is returned with results of the command.</maml:para>
</maml:description>
</command:parameter>
</command:syntaxItem>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>IncludeUserName</maml:name>
<maml:description>
<maml:para>Specifies that the UserName value of the Process object is returned with results of the command.</maml:para>
</maml:description>
</command:parameter>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="named" aliases="">
<maml:name>InputObject</maml:name>
<maml:description>
<maml:para>Specifies one or more process objects. Enter a variable that contains the objects, or type a command or expression that gets the objects.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Process[]</command:parameterValue>
</command:parameter>
</command:syntaxItem>
<command:syntaxItem>
<maml:name>Get-Process</maml:name>
<command:parameter required="false" variableLength="true" globbing="true" pipelineInput="True (ByPropertyName)" position="1" aliases="ProcessName">
<maml:name>Name</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process name. You can type multiple process names (separated by commas) and use wildcard characters. The parameter name ("Name") is optional.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
</command:parameter>
<command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>IncludeUserName</maml:name>
<maml:description>
<maml:para>Specifies that the UserName value of the Process object is returned with results of the command.</maml:para>
</maml:description>
</command:parameter>
</command:syntaxItem>
</command:syntax>
<command:parameters>
<command:parameter required="false" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="Cn">
<maml:name>ComputerName</maml:name>
<maml:description>
<maml:para>Gets the processes running on the specified computers. The default is the local computer.</maml:para>
<maml:para>Type the NetBIOS name, an IP address, or a fully qualified domain name of one or more computers. To specify the local computer, type the computer name, a dot (.), or "localhost".</maml:para>
<maml:para>This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of Get-Process even if your computer is not configured to run remote commands.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
<dev:type>
<maml:name>String[]</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue>Local computer</dev:defaultValue>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="FV,FVI">
<maml:name>FileVersionInfo</maml:name>
<maml:description>
<maml:para>Gets the file version information for the program that runs in the process. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the FileVersionInfo and ComputerName parameters of the Get-Process cmdlet in the same command. To get file version information for a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>Using this parameter is equivalent to getting the MainModule.FileVersionInfo property of each process object. When you use this parameter, Get-Process returns a FileVersionInfo object (System.Diagnostics.FileVersionInfo), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process.</maml:para>
</maml:description>
<command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
<dev:type>
<maml:name>SwitchParameter</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue>False</dev:defaultValue>
</command:parameter>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByPropertyName)" position="named" aliases="PID">
<maml:name>Id</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process ID (PID). To specify multiple IDs, use commas to separate the IDs. To find the PID of a process, type "get-process".</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Int32[]</command:parameterValue>
<dev:type>
<maml:name>Int32[]</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue></dev:defaultValue>
</command:parameter>
<command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>IncludeUserName</maml:name>
<maml:description>
<maml:para>Specifies that the UserName value of the Process object is returned with results of the command.</maml:para>
</maml:description>
<command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
<dev:type>
<maml:name>SwitchParameter</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue></dev:defaultValue>
</command:parameter>
<command:parameter required="true" variableLength="true" globbing="false" pipelineInput="True (ByValue)" position="named" aliases="">
<maml:name>InputObject</maml:name>
<maml:description>
<maml:para>Specifies one or more process objects. Enter a variable that contains the objects, or type a command or expression that gets the objects.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">Process[]</command:parameterValue>
<dev:type>
<maml:name>Process[]</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue></dev:defaultValue>
</command:parameter>
<command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="named" aliases="">
<maml:name>Module</maml:name>
<maml:description>
<maml:para>Gets the modules that have been loaded by the processes. </maml:para>
<maml:para>On Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option to use this parameter on processes that you do not own. </maml:para>
<maml:para>You cannot use the Module and ComputerName parameters of the Get-Process cmdlet in the same command. To get the modules that have been loaded by a process on a remote computer, use the Invoke-Command cmdlet.</maml:para>
<maml:para>This parameter is equivalent to getting the Modules property of each process object. When you use this parameter, Get-Process returns a ProcessModule object (System.Diagnostics.ProcessModule), not a process object. So, you cannot pipe the output of the command to a cmdlet that expects a process object, such as Stop-Process. </maml:para>
<maml:para>When you use both the Module and FileVersionInfo parameters in the same command, Get-Process returns a FileVersionInfo object with information about the file version of all modules.</maml:para>
</maml:description>
<command:parameterValue required="false" variableLength="false">SwitchParameter</command:parameterValue>
<dev:type>
<maml:name>SwitchParameter</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue>False</dev:defaultValue>
</command:parameter>
<command:parameter required="false" variableLength="true" globbing="true" pipelineInput="True (ByPropertyName)" position="1" aliases="ProcessName">
<maml:name>Name</maml:name>
<maml:description>
<maml:para>Specifies one or more processes by process name. You can type multiple process names (separated by commas) and use wildcard characters. The parameter name ("Name") is optional.</maml:para>
</maml:description>
<command:parameterValue required="true" variableLength="true">String[]</command:parameterValue>
<dev:type>
<maml:name>String[]</maml:name>
<maml:uri />
</dev:type>
<dev:defaultValue></dev:defaultValue>
</command:parameter>
</command:parameters>
<command:inputTypes>
<command:inputType>
<dev:type>
<maml:name>System.Diagnostics.Process</maml:name>
<maml:uri></maml:uri>
<maml:description>
<maml:para />
</maml:description>
</dev:type>
<maml:description>
<maml:para>You can pipe a process object to Get-Process.</maml:para>
</maml:description>
</command:inputType>
</command:inputTypes>
<command:returnValues>
<command:returnValue>
<dev:type>
<maml:name>System.Diagnostics.Process, System.Diagnotics.FileVersionInfo, System.Diagnostics.ProcessModule</maml:name>
<maml:uri></maml:uri>
<maml:description>
<maml:para />
</maml:description>
</dev:type>
<maml:description>
<maml:para>By default, Get-Process returns a System.Diagnostics.Process object. If you use the FileVersionInfo parameter, it returns a System.Diagnotics.FileVersionInfo object. If you use the Module parameter (without the FileVersionInfo parameter), it returns a System.Diagnostics.ProcessModule object.</maml:para>
</maml:description>
</command:returnValue>
</command:returnValues>
<command:terminatingErrors />
<command:nonTerminatingErrors />
<maml:alertSet>
<maml:title />
<maml:alert>
<maml:para>You can also refer to Get-Process by its built-in aliases, "ps" and "gps". For more information, see about_Aliases.</maml:para>
</maml:alert>
<maml:alert>
<maml:para>On computers that are running a 64-bit version of Windows, the 64-bit version of Windows PowerShell gets only 64-bit process modules and the 32-bit version of Windows PowerShell gets only 32-bit process modules.</maml:para>
</maml:alert>
<maml:alert>
<maml:para>You can use the properties and methods of the WMI Win32_Process object in Windows PowerShell. For information, see T:Microsoft.PowerShell.Commands.Get-WmiObject and the Windows Management Instrumentation (WMI) SDK.</maml:para>
</maml:alert>
<maml:alert>
<maml:para>The default display of a process is a table that includes the following columns. For a description of all of the properties of process objects, see "Process Properties" on <maml:navigationLink><maml:linkText>MSDN</maml:linkText><maml:uri></maml:uri></maml:navigationLink> at http://go.microsoft.com/fwlink/?LinkId=204482.</maml:para>
<maml:para>-- Handles: The number of handles that the process has opened.</maml:para>
<maml:para>-- NPM(K): The amount of non-paged memory that the process is using, in kilobytes.</maml:para>
<maml:para>-- PM(K): The amount of pageable memory that the process is using, in kilobytes.</maml:para>
<maml:para>-- WS(K): The size of the working set of the process, in kilobytes. The working set consists of the pages of memory that were recently referenced by the process.</maml:para>
<maml:para>-- VM(M): The amount of virtual memory that the process is using, in megabytes. Virtual memory includes storage in the paging files on disk.</maml:para>
<maml:para>-- CPU(s): The amount of processor time that the process has used on all processors, in seconds.</maml:para>
<maml:para>-- ID: The process ID (PID) of the process.</maml:para>
<maml:para>-- ProcessName: The name of the process.</maml:para>
<maml:para>For explanations of the concepts related to processes, see the Glossary in Help and Support Center and the Help for Task Manager.</maml:para>
</maml:alert>
<maml:alert>
<maml:para>You can also use the built-in alternate views of the processes available with Format-Table, such as "StartTime" and "Priority", and you can design your own views. For more information, see T:Microsoft.PowerShell.Commands.Format-Table.</maml:para>
</maml:alert>
</maml:alertSet>
<command:examples>
<command:example>
<maml:title>
-------------------------- EXAMPLE 1 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>Get-Process
</dev:code>
<dev:remarks>
<maml:para>This command gets a list of all of the running processes running on the local computer. For a definition of each column, see the "Additional Notes" section of the Help topic for Get-Help.</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 2 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>Get-Process winword, explorer | format-list *
</dev:code>
<dev:remarks>
<maml:para>This command gets all available data about the Winword and Explorer processes on the computer. It uses the Name parameter to specify the processes, but it omits the optional parameter name. The pipeline operator (|) passes the data to the Format-List cmdlet, which displays all available properties (*) of the Winword and Explorer process objects.</maml:para>
<maml:para>You can also identify the processes by their process IDs. For example, "get-process -id 664, 2060".</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 3 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process | where-object {$_.WorkingSet -gt 20000000}
</dev:code>
<dev:remarks>
<maml:para>This command gets all processes that have a working set greater than 20 MB. It uses the Get-Process cmdlet to get all running processes. The pipeline operator (|) passes the process objects to the Where-Object cmdlet, which selects only the object with a value greater than 20,000,000 bytes for the WorkingSet property.</maml:para>
<maml:para>WorkingSet is one of many properties of process objects. To see all of the properties, type "Get-Process | Get-Member". By default, the values of all amount properties are in bytes, even though the default display lists them in kilobytes and megabytes.</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 4 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>$a = get-process
</dev:code>
<dev:code>PS C:\>get-process -inputobject $a | format-table -view priority
</dev:code>
<dev:remarks>
<maml:para>These commands list the processes on the computer in groups based on their priority class. The first command gets all the processes on the computer and then stores them in the $a variable.</maml:para>
<maml:para>The second command uses the InputObject parameter to pass the process objects that are stored in the $a variable to the Get-Process cmdlet. The pipeline operator passes the objects to the Format-Table cmdlet, which formats the processes by using the Priority view. The Priority view, and other views, are defined in the PS1XML format files in the Windows PowerShell home directory ($pshome).</maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 5 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process powershell -computername S1, localhost | ft @{Label="NPM(K)";Expression={[int]($_.NPM/1024)}}, @{Label="PM(K)";Expression={[int]($_.PM/1024)}},@{Label="WS(K)";Expression={[int]($_.WS/1024)}},@{Label="VM(M)";Expression={[int]($_.VM/1MB)}}, @{Label="CPU(s)";Expression={if ($_.CPU -ne $()) { $_.CPU.ToString("N")}}}, Id, MachineName, ProcessName -auto
NPM(K) PM(K) WS(K) VM(M) CPU(s) Id MachineName ProcessName
------ ----- ----- ----- ------ -- ----------- -----------
6 23500 31340 142 1980 S1 powershell
6 23500 31348 142 4016 S1 powershell
27 54572 54520 576 4428 localhost powershell
</dev:code>
<dev:remarks>
<maml:para>This example provides a Format-Table (alias = ft) command that adds the MachineName property to the standard Get-Process output display.</maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 6 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process powershell -fileversioninfo
ProductVersion FileVersion FileName
-------------- ----------- --------
6.1.6713.1 6.1.6713.1 (f... C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe
</dev:code>
<dev:remarks>
<maml:para>This command uses the FileVersionInfo parameter to get the version information for the PowerShell.exe file that is the main module for the PowerShell process. </maml:para>
<maml:para>To run this command with processes that you do not own on Windows Vista and later versions of Windows, you must open Windows PowerShell with the "Run as administrator" option.</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 7 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process sql* -module
</dev:code>
<dev:remarks>
<maml:para>This command uses the Module parameter to get the modules that have been loaded by the process. This command gets the modules for the processes that have names that begin with "sql".</maml:para>
<maml:para>To run this command on Windows Vista (and later versions of Windows) with processes that you do not own, you must start Windows PowerShell with the "Run as administrator" option.</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 8 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>$p = get-wmiobject win32_process -filter "name='powershell.exe'"
PS C:\>$p.getowner()
__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 3
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
Domain : DOMAIN01
ReturnValue : 0
User : user01
</dev:code>
<dev:remarks>
<maml:para>This command shows how to find the owner of a process. Because the System.Diagnostics.Process object that Get-Process returns does not have a property or method that returns the process owner, the command uses</maml:para>
<maml:para>the Get-WmiObject cmdlet to get a Win32_Process object that represents the same process.</maml:para>
<maml:para>The first command uses Get-WmiObject to get the PowerShell process. It saves it in the $p variable.</maml:para>
<maml:para>The second command uses the GetOwner method to get the owner of the process in $p. The command reveals that the owner is Domain01\user01.</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 9 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process powershell
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
308 26 52308 61780 567 3.18 5632 powershell
377 26 62676 63384 575 3.88 5888 powershell
</dev:code>
<dev:code>PS C:\>get-process -id $pid
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
396 26 56488 57236 575 3.90 5888 powershell
</dev:code>
<dev:remarks>
<maml:para>These commands show how to use the $pid automatic variable to identify the process that is hosting the current Windows PowerShell session. You can use this method to distinguish the host process from other Windows PowerShell processes that you might want to stop or close. The first command gets all of the Windows PowerShell processes in the current session.</maml:para>
<maml:para>The second command gets the Windows PowerShell process that is hosting the current session.</maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
<command:example>
<maml:title>
-------------------------- EXAMPLE 10 --------------------------
</maml:title>
<maml:introduction>
<maml:para></maml:para>
</maml:introduction>
<dev:code>PS C:\>get-process | where {$_.mainWindowTitle} | format-table id, name, mainwindowtitle -autosize
</dev:code>
<dev:remarks>
<maml:para>This command gets all the processes that have a main window title, and it displays them in a table with the process ID and the process name.</maml:para>
<maml:para>The mainWindowTitle property is just one of many useful properties of the System.Diagnostics.Process object that Get-Process returns. To view all of the properties, pipe the results of a Get-Process command to the T:Microsoft.PowerShell.Commands.Get-Member cmdlet (get-process | get-member).</maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
<maml:para></maml:para>
</dev:remarks>
<command:commandLines>
<command:commandLine>
<command:commandText />
</command:commandLine>
</command:commandLines>
</command:example>
</command:examples>
<maml:relatedLinks>
<maml:navigationLink>
<maml:linkText>Online Version:</maml:linkText>
<maml:uri>http://go.microsoft.com/fwlink/p/?linkid=290498</maml:uri>
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>Debug-Process</maml:linkText>
<maml:uri />
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>Get-Process</maml:linkText>
<maml:uri />
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>Start-Process</maml:linkText>
<maml:uri />
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>Stop-Process</maml:linkText>
<maml:uri />
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>Wait-Process</maml:linkText>
<maml:uri />
</maml:navigationLink>
</maml:relatedLinks>
</command:command>