※本ページにはプロモーション(広告)が含まれています
【2026年最新版】WindowsPowerShellの基本コマンド完全ガイド【初心者向け・自動化入門】
「PowerShellって難しそう…」と感じていませんか?実はWindowsのPowerShellは、ファイル操作・システム管理・自動化を強力にサポートする現代のWindowsには欠かせないツールです。コマンドプロンプト(cmd)より高機能で、業務の自動化や繰り返し作業の効率化に大活躍します。
本記事では、PowerShellを一度も使ったことがない初心者を対象に、よく使うコマンドレット(cmdlet)50選をカテゴリ別に解説します。実際に動かせるコマンド例と合わせて丁寧に説明するので、ぜひ手を動かしながら学んでいきましょう。

この記事でわかること
- PowerShellの起動方法と基本的な使い方
- ファイル・ディレクトリ操作のコマンドレット
- プロセス・サービス管理のコマンドレット
- ネットワーク関連コマンドレット
- スクリプトの基本と自動化入門
- コマンドプロンプトとの違い
PowerShellとコマンドプロンプトの違い
| 項目 | コマンドプロンプト(cmd) | PowerShell |
|---|---|---|
| 搭載OS | Windows 95から | Windows 7以降(標準搭載) |
| オブジェクト操作 | テキストのみ | .NETオブジェクトを直接操作可能 |
| スクリプト | バッチファイル(.bat) | PowerShellスクリプト(.ps1) |
| 機能の豊富さ | 基本的なファイル・システム操作 | システム管理・ネットワーク・クラウド等 |
| パイプライン | テキスト渡し | オブジェクト渡し(より強力) |
PowerShellの起動方法
方法1:検索バーから起動(最も手軽)
- タスクバーの検索ボックスに「PowerShell」と入力する
- 「Windows PowerShell」をクリックして起動する
- 管理者権限が必要な場合は「管理者として実行」をクリックする
方法2:右クリックメニューから起動
- スタートボタンを右クリックする
- 「Windows PowerShell」または「Windows ターミナル」をクリックする
方法3:Windows TerminalからPowerShellを選択
Windows 11ではWindows Terminalがデフォルトのターミナルアプリです。起動後、タブ横の「▽」をクリックしてPowerShellを選択できます。
PowerShellの基本画面
起動すると以下のプロンプトが表示されます。
PS C:\Users\ユーザー名>
- PS: PowerShellであることを示す
- C:\Users\ユーザー名: 現在のディレクトリ(場所)
- >: コマンド入力待ち
基本ルールと覚えておきたいこと
- コマンドレットは 動詞-名詞 の形式(例: Get-Item・Set-Location・Remove-Item)
- 大文字・小文字を区別しない(get-item でも Get-Item でも動く)
- 実行後はEnterキーを押す
- 途中で止めるには Ctrl + C
- Tabキーでコマンド・パスを自動補完できる
- ↑↓矢印キーでコマンド履歴を呼び出せる
- コマンドのヘルプを見るには
Get-Help コマンド名
カテゴリ1:ファイル・ディレクトリ操作
場所の確認と移動
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Get-Location (pwd) |
現在のディレクトリを表示 | Get-Location |
Set-Location (cd) |
ディレクトリを移動 | Set-Location C:\Users |
cd .. |
一つ上のディレクトリへ移動 | cd .. |
Get-ChildItem (ls / dir) |
ファイル・フォルダの一覧を表示 | Get-ChildItem |
Get-ChildItem -Recurse |
サブフォルダも含めて再帰的に表示 | Get-ChildItem -Recurse *.txt |
ファイルの作成・コピー・移動・削除
| コマンドレット | 意味 | 使用例 |
|---|---|---|
New-Item |
新しいファイルまたはフォルダを作成 | New-Item -Name "test.txt" -ItemType File |
New-Item -ItemType Directory |
新しいフォルダを作成 | New-Item -Name "myfolder" -ItemType Directory |
Copy-Item |
ファイルまたはフォルダをコピー | Copy-Item "test.txt" "test_bak.txt" |
Move-Item |
ファイルを移動またはリネーム | Move-Item "test.txt" "C:\Backup\" |
Remove-Item |
ファイルまたはフォルダを削除 | Remove-Item "test.txt" |
Rename-Item |
ファイル名を変更 | Rename-Item "old.txt" "new.txt" |
ファイルの内容を表示・操作する
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Get-Content |
ファイルの内容を表示 | Get-Content "log.txt" |
Set-Content |
ファイルに内容を書き込む(上書き) | Set-Content "memo.txt" "Hello World" |
Add-Content |
ファイルに内容を追記する | Add-Content "memo.txt" "追加行" |
Select-String |
ファイル内の文字列を検索(grepに相当) | Select-String "error" "log.txt" |

カテゴリ2:プロセス・サービス管理
プロセスの確認と終了
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Get-Process |
実行中のプロセス一覧を表示 | Get-Process |
Get-Process -Name "名前" |
特定のプロセスを検索 | Get-Process -Name "chrome" |
Stop-Process |
プロセスを強制終了 | Stop-Process -Name "notepad" |
Start-Process |
プロセス(アプリ)を起動する | Start-Process "notepad.exe" |
Windowsサービスの管理
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Get-Service |
Windowsサービスの一覧を表示 | Get-Service |
Start-Service |
サービスを起動する(管理者権限必要) | Start-Service -Name "wuauserv" |
Stop-Service |
サービスを停止する(管理者権限必要) | Stop-Service -Name "wuauserv" |
Restart-Service |
サービスを再起動する | Restart-Service -Name "wuauserv" |
カテゴリ3:システム情報の確認
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Get-ComputerInfo |
PCの詳細なシステム情報を表示 | Get-ComputerInfo |
$PSVersionTable |
PowerShellのバージョン情報を表示 | $PSVersionTable |
Get-Disk |
ディスク情報を表示 | Get-Disk |
Get-Volume |
ボリューム(ドライブ)情報を表示 | Get-Volume |
Get-EventLog |
イベントログを取得(管理者権限必要) | Get-EventLog -LogName System -Newest 20 |
カテゴリ4:ネットワーク関連
| コマンドレット | 意味 | 使用例 |
|---|---|---|
Test-Connection |
pingに相当。ホストへの疎通確認 | Test-Connection google.com |
Get-NetAdapter |
ネットワークアダプター一覧を表示 | Get-NetAdapter |
Get-NetIPAddress |
IPアドレス情報を表示 | Get-NetIPAddress |
Resolve-DnsName |
DNS名前解決を行う(nslookupに相当) | Resolve-DnsName google.com |
Invoke-WebRequest |
URLのコンテンツを取得(curlに相当) | Invoke-WebRequest https://example.com |

パイプラインとフィルタリング
パイプライン(|)の基本
PowerShellのパイプラインはオブジェクトをそのまま渡せる点がコマンドプロンプトより強力です。
Get-Process | Where-Object {$_.CPU -gt 100}— CPU使用率が100以上のプロセスだけ表示Get-ChildItem | Sort-Object Length— ファイルをサイズ順に並び替えGet-Service | Where-Object {$_.Status -eq "Running"}— 実行中のサービスだけ表示Get-Process | Select-Object Name, CPU | Sort-Object CPU -Descending— プロセス名とCPUを降順に表示
よく使うフィルタリングコマンドレット
| コマンドレット | 意味 |
|---|---|
Where-Object |
条件に一致するオブジェクトだけ通過させる |
Select-Object |
必要なプロパティだけを選択して表示する |
Sort-Object |
プロパティを基準に並び替える |
Format-Table |
結果を表形式で表示する |
Measure-Object |
個数・合計・平均などを計算する |
PowerShellスクリプト入門
スクリプトファイルとは
PowerShellコマンドを並べたテキストファイル(拡張子 .ps1)を作成して実行すると、複数のコマンドを自動で連続実行できます。繰り返し作業の自動化に活躍します。
スクリプトの実行ポリシー設定
デフォルトではセキュリティのためスクリプトの実行が制限されています。ローカルで作成したスクリプトを実行するには以下のコマンドを管理者として実行してください。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
設定の意味:ローカルで作成したスクリプトは実行OK・インターネットからダウンロードしたものは署名が必要。
簡単なスクリプト例
以下はDesktopフォルダの .txt ファイルをすべて一覧表示するスクリプトです。
# デスクトップのテキストファイルを一覧表示
$desktopPath = [Environment]::GetFolderPath("Desktop")
$files = Get-ChildItem -Path $desktopPath -Filter "*.txt"
foreach ($file in $files) {
Write-Host $file.Name
}
Write-Host "合計: $($files.Count) 件"
よくある質問(FAQ)
Q1. PowerShellとPowerShell Coreの違いは何ですか?
Windows標準のPowerShell(バージョン5.x)はWindows専用です。PowerShell 7(PowerShell Core)はMicrosoft公式のオープンソース版で、Windows・macOS・Linuxで動作します。2026年現在、最新機能はPowerShell 7で提供されています。Windows Terminalから切り替えられます。
Q2. 「スクリプトの実行が無効になっています」と表示されます
実行ポリシーによる制限です。管理者としてPowerShellを起動し、以下を実行してください。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Q3. コマンドの使い方を調べるにはどうすればよいですか?
Get-Help コマンドレット名 を実行すると詳細なヘルプが表示されます。例: Get-Help Get-ChildItem -Full。オンラインで最新のヘルプを見るには Get-Help Get-ChildItem -Online を実行してブラウザで開けます。
Q4. コマンドの短縮形(エイリアス)はありますか?
はい、よく使うコマンドレットには短縮エイリアスが用意されています。
lsまたはdir→Get-ChildItemcd→Set-Locationpwd→Get-Locationcp→Copy-Itemmv→Move-Itemrm→Remove-Itemecho→Write-Output
エイリアス一覧を見るには Get-Alias を実行してください。
Q5. 管理者権限なしで実行できないコマンドがあります
サービス管理・システム設定変更・レジストリ操作などは管理者権限が必要です。PowerShellを「管理者として実行」してから実行してください。スタートメニューでPowerShellを検索し、右クリック→「管理者として実行」を選択します。
Q6. PowerShellでCSVファイルを読み込む方法は?
Import-Csv コマンドレットを使います。
$data = Import-Csv "C:\data.csv"
$data | Format-Table
CSVの各行がオブジェクトとして扱われるため、列名でプロパティにアクセスできます(例: $data[0].名前)。
まとめ
PowerShellはWindows環境の自動化・管理に欠かせない強力なツールです。本記事のポイントをまとめます。
- PowerShellはコマンドプロンプトより高機能でオブジェクト操作が可能
- コマンドレットは「動詞-名詞」の形式で直感的に理解できる
- Tabキーの補完と矢印キーの履歴でコマンド入力を効率化できる
- パイプライン(|)とWhere-Objectで強力なフィルタリングができる
- スクリプト(.ps1)で繰り返し作業を自動化できる
- Get-Helpでいつでもコマンドの使い方を確認できる
まずは Get-ChildItem・Set-Location・Get-Process の3コマンドから始めて、少しずつ使えるコマンドを増やしていきましょう。PowerShellをマスターすれば、毎日の作業が大幅に効率化されます。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!