PowerShellは、Windows環境で強力なスクリプト作成やタスクの自動化を実現するツールの一つです。その中でも、「Stop-Process」 コマンドを使うことで、特定のプロセスを強制的に終了させることができます。
このコマンドを適切に使えば、不要なプロセスの停止、フリーズしたアプリケーションの強制終了、サーバー管理時のプロセス制御などに役立ちます。
本記事では、「Stop-Process」コマンドの基本的な使い方から応用テクニックまでを詳しく解説していきます。
「Stop-Process」は、Windowsのプロセスを終了させるためのPowerShellコマンドです。タスクマネージャーを開かずに、PowerShell上で簡単にプロセスを制御できます。
Stop-Process -Name "プロセス名"
または
Stop-Process -Id プロセスID
主なパラメータ:
-Name
: 停止したいプロセスの名前を指定-Id
: 停止したいプロセスのID(PID)を指定-Force
: 強制的にプロセスを終了させる-Confirm
: プロセスを終了する前に確認プロンプトを表示特定のアプリケーションを終了する場合、プロセス名を指定します。
Stop-Process -Name "notepad"
このコマンドは、メモ帳(notepad.exe)をすべて終了させます。
プロセスIDを指定する方法もあります。
Stop-Process -Id 1234
プロセスIDは、以下のコマンドで取得可能です。
Get-Process | Select-Object Name, Id
この方法は、同じ名前の複数のプロセスがある場合に便利です。
通常、プロセスは正常に終了しますが、応答しないプロセスには -Force
を付けます。
Stop-Process -Name "chrome" -Force
これにより、Google Chromeが強制終了されます。
誤って重要なプロセスを終了しないよう、-Confirm
を付けて確認プロンプトを表示させることもできます。
Stop-Process -Name "explorer" -Confirm
「Y(Yes)」を入力するとプロセスが終了します。
Get-Process | Where-Object {$_.StartInfo.UserName -eq "UserName"} | Stop-Process -Force
これにより、特定のユーザーが起動したプロセスをまとめて終了できます。
Start-Sleep -Seconds 10; Stop-Process -Name "calc"
上記のコマンドは、10秒後に電卓(calc.exe)を終了させます。
if (Get-Process -Name "wordpad" -ErrorAction SilentlyContinue) {
Stop-Process -Name "wordpad"
} else {
Write-Host "WordPadは実行されていません。"
}
これにより、WordPadが実行中の場合のみ停止します。
一部のプロセスは、管理者権限がないと停止できません。
その場合は、PowerShellを管理者権限で開いて実行しましょう。
例えば、エクスプローラー(explorer.exe
)を終了すると、デスクトップが消えてしまいます。
誤って終了した場合は、PowerShellで以下を実行すると復帰します。
Start-Process explorer
以下のようなプロセスは、Windowsの動作に不可欠です。誤って停止すると、PCがクラッシュする可能性があります。
winlogon.exe
csrss.exe
services.exe
誤って停止しないよう、対象のプロセスをよく確認しましょう。
PowerShellの「Stop-Process」コマンドを使えば、タスクマネージャーを開かずにプロセスを停止できるため、効率的な管理が可能です。
-Name
または -Id
でプロセスを指定して終了-Force
で強制終了-Confirm
で安全に実行PowerShellを活用して、よりスマートなプロセス管理を実践しましょう!