Windowsサービスが意図せず停止していて、「手動でサービスを開始するのが面倒…」と感じたことはありませんか?
そんなときに便利なのが、PowerShellで使えるサービス制御コマンド、Start-Service
です。
この記事では、PowerShellを使って停止中のサービスを簡単に開始する方法として、Start-Service
の基本構文・使用例・応用方法を初心者向けにわかりやすく解説します。
GUIでサービスを探す手間を省いて、もっとスマートに操作しましょう!
Start-Serviceとは?

Start-Service
は、停止中のWindowsサービスをPowerShellから開始(起動)するためのコマンドレットです。
Windows管理者だけでなく、一般ユーザーでもサービス操作をスクリプトで自動化するために使われます。
基本構文と使用例

基本構文:
Start-Service -Name サービス名
例:WSearchを起動
Start-Service -Name WSearch
このコマンドにより、「WSearch」が現在停止していれば起動されます。
サービス名の確認方法
サービス名を確認するには、Get-Service
コマンドが便利です。
Get-Service
出力例:
Status Name DisplayName
------ ---- -----------
Stopped Spooler Print Spooler
Running WinDefend Microsoft Defender Antivirus
Name
列が-Name
パラメータに指定する値です。DisplayName
はユーザー向けの名称(GUI上で表示される名前)です。
複数のサービスをまとめて開始する方法
複数のサービスを一度に起動するには、カンマで区切って指定します:
Start-Service -Name Spooler, WSearch
または、パイプで複数サービスを渡すこともできます:
"Spooler", "WSearch" | ForEach-Object { Start-Service -Name $_ }
状態を確認してから起動する方法(安全な運用)

すでに起動しているサービスに対してStart-Service
を実行しても問題ありませんが、状態を事前に確認することで無駄な処理を避けられます。
例:サービスが停止中のときだけ起動
$svc = Get-Service -Name Spooler
if ($svc.Status -eq "Stopped") {
Start-Service -Name Spooler
Write-Output "Spoolerを起動しました。"
} else {
Write-Output "Spoolerはすでに実行中です。"
}
よくあるエラーとその対処法
エラー内容 | 原因と対策 |
---|---|
Cannot find any service with service name | サービス名が間違っている。Get-Service で正しい名前を確認しましょう。 |
Access is denied | 管理者権限でPowerShellを実行していない。右クリックして「管理者として実行」してください。 |
Service cannot be started | サービスが無効化されているか、依存関係に問題がある。サービスの構成を確認しましょう。 |
まとめ:PowerShellでサービス管理を効率化しよう
PowerShellのStart-Service
を使えば、Windowsサービスの起動を数秒で簡単に実行できます。
特に、定期的に停止・再起動が必要なサービスや、サーバー管理業務においては非常に有効な手段です。
ポイントまとめ
Start-Service -Name サービス名
でサービスを開始Get-Service
で名前を事前に確認- 複数サービスや状態判定もスクリプト化可能
- エラー発生時は権限やサービス構成を確認
コメント