Проверьте, запущена ли программа по пути к исполняемому файлу - PullRequest
3 голосов
/ 28 февраля 2012

Как в PowerShell проверить, выполняется ли программа, используя полный путь к исполняемому файлу программы?Или мне нужно разобрать путь, чтобы получить имя процесса?

Спасибо.

РЕДАКТИРОВАТЬ:

Мне нужно знать, если исполняемый файл "C: \ Мои временные программы"\ Test 1.exe "запущен.

Ответы [ 2 ]

7 голосов
/ 28 февраля 2012

Попробуйте это:

get-process | ?{$_.path -eq $path}

Так что вы можете сделать что-то вроде:

if(get-process | ?{$_.path -eq "C:\My Temporary Programs\Test 1.exe"}){
    #exe is running. Do what you want
}
2 голосов
/ 28 февраля 2012
$exePath = 'C:\My Temporary Programs\Test 1.exe'

$isRunning = (get-wmiobject win32_process | ? { 
    $_.Path -eq $exePath
 } | measure-object | % { $_.Count }) -gt 0



# $isRunning is now a boolean value, set to true if there is one or
# more instances running
...