現在、クライアント マシンで実行されているコマンド ラインを探しています。スクリプトを実行しているコマンド ラインが見つかった場合は、そのプロセス ID を終了する必要があります。これが私が現在持っているものですが、そのParentProcessIDを殺す良い方法について少し迷っています。
Get-WMIObject を見るとわかるように、CommandLine と ParentProcess ID のプロパティを取得しています。foreach を実行して、これらのコマンド ラインを文字列と一致させることができます。しかし、この時点では、ParentProcessID プロパティを渡す方法やリンクする方法がわからないので、ParentProcessID を強制終了できます。
$process = "powershell.exe"
$GetCommand = Get-WmiObject Win32_Process -Filter "name = '$process'" |select CommandLine, ParentProcessID
foreach($command in $GetCommand){
If($command -match "MyScript.ps1"){
#kill ParentProcessID
}
}
これを達成する方法はありますか?