Stop-Process 帮助信息

本文介绍如何使用PowerShell中的Stop-Process命令来终止进程。包括通过进程ID、名称或对象来指定要停止的进程,以及如何使用-passThru、-whatIf和-confirm等参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
如下说明是翻译: help Stop-Process 产生的帮助信息.
译者: Edengundam(马涛)
 
Stop-Process
 
大纲
停止一个或多个运行的进程.
 
语法
Stop-Process [-id] <Int32[]> [-passThru] [-whatIf] [-confirm] [<CommonParameters>]
 
Stop-Process -name <string[]> [-passThru] [-whatIf] [-confirm] [<CommonParameters>]
 
Stop-Process -inputObject <Process[]> [-passThru] [-whatIf] [-confirm] [<CommonParameters>]
 
详细描述
Stop-Process cmdlet停止一个或多个运行的进程. 你能够通过指定进程名称或进程ID(PID)来标示进程, 或者传递进程对象给Stop-Process. 对于Get-Process来说, 默认将会使用进程名称进行操作. 对于Stop-Process来说, 默认将会使用进程ID进行操作.
 
参数
 
-id <Int32[]>
指定要停止的进程ID. 指定多个ID, 使用逗号分割. 要查看进程的PID, 输入"get-process". 参出名("-Id")是可选的.
 
强制参数?
true
参数位置?
1
默认值
Null
允许从管道绑定输入?
true (根据属性名)
允许通配符扩展?
false
 
-inputObject <Process[]>
停止通过进程对象表示的进程. 输入一个包含对象的变量, 或者一个能够产生对象的命令或表达式.
 
强制参数?
true
参数位置?
named
默认值
 
允许从管道绑定输入?
true (ByValue)
允许通配符扩展?
false
 
-name <string[]>
指定要停止的进程名称. 你可以输入多个进程名称(使用逗号分隔), 此参数允许使用通配符.
 
强制参数?
true
参数位置?
named
默认值
Null
允许从管道绑定输入?
true (ByPropertyName)
允许通配符扩展?
true
 
-passThru <SwitchParameter>
输出此命令创建的对象到管道中. 默认情况下, 此命令不会将对象输出到管道.
 
强制参数?
false
参数位置?
named
默认值
False
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-whatIf
描述执行此命令将会发生的现象, 不会真正执行此命令.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
-confirm
执行命令前提示你进行确认.
 
强制参数?
false
参数位置?
named
默认值
 
允许从管道绑定输入?
false
允许通配符扩展?
false
 
<公共参数>
此命令支持公共参数: -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息, 输入, "get-help about_commonparameters".
 
输入类型
包含属性"Name""Id"PSObjects, 或者是字符串, 数字.
 
返回类型
默认情况无任何返回. 当制定了参数-passthru,  一个PSObject将会沿着管道被输入.
 
注意
 
更多信息, 输入"Get-Help Stop-Process -detailed".需要技术信息, 输入"Get-Help Stop-Process -full".
 
如果需要为该命令提供多个参数, 请使用逗号进行分隔. 例如, "<parameter-name> <value1>, <value2>".
 
Windows PowerShell, 你还可以使用WMIWin32_Process对象的方法和属性. 需要更多信息, 参看Get-WmiObject以及Windows Management Instrument SDK.
 
你可以使用Stop-Process内建别名"kill""spps".需要更多信息, 查看About_Alias.
 
停止某些进程时, 需要注意某些依赖被停止的进程也会被停止. 在极端情况下, 停止进程可能会停止Windows.
 
1
 
C:/PS>stop-process -name notepad
 
此命令停止计算机上所有Notepad进程实例. (每个Notepad实例运行在独立的进程中.) 此处使用参数Name指定停止的进程, 这些进程拥有同样的名字. 如果你使用参数ID来停止同样名字的进程, 你必须列出Notepad实例的所有进程ID.
 
2
 
C:/PS>stop-process -id 3952 -confirm -passthru
 
此命令停止一个特定的Notepad进程实例. 使用进程ID, 3952来标示该进程. 参数Confirm指示Windows PowerShell在停止该进程前询问用户. 因为提示中包含了进程的名称和ID, 更加适合日常使用. 参数Passthru传递进程对象到格式器来显示信息. 如果不使用此参数, 命令Stop-Process将不会产生任何输出.
 
Confirm
Are you sure you want to perform this action?
Performing operation "Stop-Process" on Target "notepad (3952)".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help
(default is "Y"):y
Handles  NPM(K)PM(K)  WS(K) VM(M)   CPU(s) Id ProcessName
-------  -----------  ----- -----   ------ -- -----------
 41         2  996    321   23      139    52 notepad
 
3
 
C:/PS>calc
 
c:/PS>$p = get-process calc
 
c:/PS>stop-process -inputobject $p
 
c:/PS>get-process | where-object {$_.HasExited}
 
这几步操作启动, 停止Calc进程, 并检测该进程是否已经退出.
 
第一个命令("calc")启动一个计算器实例. 第二个命令("$p = get-process calc"), 使用Get-Process cmdlet取得一个表示Calc进程的对象, 并存储在变量$p. 第三个命令("stop-process -inputobject $p") 使用Stop-Process cmdlet来停止Calc进程. 此处使用参数InputObject将要操作的对象传递给Stop-Process.
 
最后一条命令获取计算机上, 已经停止的的所有进程. 此处使用Get-Process cmdlet取得计算机上所有的进程. 管道运算符(|)将结果发送给Where -Object cmdlet选择那些属性HasExited值为真的对象. 属性HasExited是进程对象上的属性. 要查看所有属性, 输入"get-process | get-member".(译者注: 最后一条命令并不能给出任何结果, 可以使用$p | ?{$_.HasExited来检查})
 
相关链接
Get-Process
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值