PowerShellを使うとWindowsのプロセス・サービス・レジストリをスクリプトから簡単に管理できます。システム管理の自動化に必須のコマンドレットを解説します。
プロセス管理
# 実行中のプロセス一覧
Get-Process | Sort-Object CPU -Descending | Select-Object -First 10
# 特定プロセスの取得
Get-Process -Name "chrome"
# プロセスの起動
Start-Process "notepad.exe"
Start-Process "cmd.exe" -ArgumentList "/c ipconfig" -Wait
# プロセスの強制終了
Stop-Process -Name "notepad" -Force
Get-Process | Where-Object { $_.CPU -gt 100 } | Stop-Processサービス管理
# サービス一覧
Get-Service | Where-Object { $_.Status -eq "Running" }
# サービスの操作(管理者権限が必要)
Start-Service -Name "wuauserv"
Stop-Service -Name "wuauserv"
Restart-Service -Name "Spooler"
# スタートアップの種類を変更
Set-Service -Name "Spooler" -StartupType Automaticレジストリ操作
# レジストリの読み取り
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName
# 値の書き込み(管理者権限が必要)
New-ItemProperty -Path "HKCU:\Software\MyApp" -Name "Version" -Value "1.0" -PropertyType String -Force
# 値の削除
Remove-ItemProperty -Path "HKCU:\Software\MyApp" -Name "Version"まとめ
- Get-Process・Start-Process・Stop-Processでプロセスを管理できる
- Get-Service・Start-Service・Stop-Serviceでサービスを管理できる
- レジストリはHKLM:\やHKCU:\のパスでアクセスできる



コメント