pur*_*aso 5 windows powershell clamav
我想杀死 nodepad 进程(如果存在)。如果我使用这个:
PS C:\> get-process -name notepad | Stop-Process -Force
Run Code Online (Sandbox Code Playgroud)
当进程不存在时,我会收到错误消息。
get-process : Cannot find a process with the name "notepad". Verify the process name and call the cmdlet again.
At line:1 char:1
+ get-process -name notepad | Stop-Process -Force
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (notepad:String) [Get-Process], ProcessCommandException
+ FullyQualifiedErrorId : NoProcessFoundForGivenName,Microsoft.PowerShell.Commands.GetProcessCommand
Run Code Online (Sandbox Code Playgroud)
我觉得它应该是沉默的,因为它不是一个错误,该对象应该为空。
我知道我可以这样做:
PS C:\> get-process | where { $_.processname -eq 'notepad' } | Stop-Process -Force
Run Code Online (Sandbox Code Playgroud)
但我更喜欢一种简单的方法(如果存在的话)。谢谢。
PS:我需要杀死记事本,因为当我非交互式安装 ClamAV 时,它会创建带有用户手册的记事本。我找不到告诉 ClamAV 不要打开用户手册的方法。
Mic*_*aum 10
只需添加-ErrorAction SilentlyContinue. 这个比较简单,如果进程不存在也不会提示任何错误。
Get-Process -Name notepad -ErrorAction SilentlyContinue | Stop-Process -Force
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7786 次 |
| 最近记录: |