2016-11-14 3 views
2

오라클 데이터베이스 때문에 월요일 아침마다 프로세스가 멈추는 시나리오가 있으므로 매주 월요일에 PowerShell 스크립트를 만들었지 만 오류 발생 여부와 관계없이 프로세스가 진행됩니다 유적.PowerShell은 중단 된 프로세스를 종료하지 않습니다.

나는 "죽이기"를 사용하려고 해요 라인은 다음과 같습니다

Get-Process -Name ez0* -ComputerName $server | Stop-Process -Force 

-ComputerName없이 로컬뿐만 아니라이 일을 시도.

-Force 그냥 실행하고 계속 진행하면서이 줄에서 오류가 표시되지 않습니다.

그냥 Get-Process 일을하고 볼 수는 있지만 PowerShell로 끝낼 수는 없습니다. 많은 시도 후에 나는 원격으로 서버에 로그온하고 프로세스를 마우스 오른쪽 버튼으로 클릭하고 "정상 종료"작업을 선택했습니다.

처음 8 개 중 하나 (코어 기반)이기 때문에 이상한 프로세스이며 서비스를 중지하면 중단 된 프로세스를 제외한 모든 프로세스가 제거됩니다. 사용

+1

''Invoke-Command $ server -Scriptblock {Get-Process -name ez0 * | Stop-Process -Force}'' – 4c74356b41

+0

버전 5+를 사용하면 파이프 라인을 통과 한 원격 서버에서 프로세스 객체를 중지하려고 할 때 다음과 같은 예외가 발생합니다.'stop-process : notepad (11720) 때문에 프로세스를 중지 할 수 없습니다 " 다음과 같은 오류가 발생했습니다 또는 : 원격 컴퓨터에서는 기능이 지원되지 않습니다. ' –

+0

월요일에 wmi 방법을 시도해보고 상황을 확인하지만 이는 원격 테스트가 아니라 로컬 테스트가 동일하다는 것을 의미합니다. –

답변

2

시도 : 먼저 변수에 프로세스를 확인하지 않으려면

$termproc = (get-wmiobject -ComputerName $server -Class Win32_Process -Filter "name like 'ez0%'" 
$termproc.terminate() 

또한 바로 아래에서 할 수 있습니다.

(get-wmiobject -ComputerName $server -Class Win32_Process -Filter "name like 'ez0%'").terminate() 

감사합니다.

+0

wmiobject 솔루션에 감사드립니다! 어떤 이유로 wmiobject가'Stop-Process'에서 처리하지 못했던 프로세스를 잡는 terminate 명령이 없었습니다. –

+0

걱정할 필요가 없습니다. 다행 했어. 알려 줘서 고마워. –