我想编写一个简单的If语句,它检查一个进程是否存在。
如果存在,则应该开始。
像这样,但是工作。
If ((Get-Process -Name Tvnserver.exe ) -eq $True)
{
Stop-Process tnvserver
Stop-Service tvnserver
Uninstall...
Install another Piece of Software
}
Else
{
do nothing
}
谢谢
最佳答案
如果该过程不存在,则评估为true:
(Get-Process -name Tvnserver.exe -ErrorAction SilentlyContinue) -eq $null
或者,如果您要更改它,则可以按以下方式否定该语句:
-not ( $(Get-Process -name Tvnserver.exe -ErrorAction SilentlyContinue) -eq $null )
拥有
-ErrorAction SilentlyContinue
以避免在不存在进程的情况下引发任何错误很重要。关于powershell - Powershell获取过程查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15053614/