【超基本】PowerShellのClear-Hostとは?画面クリアの方法とエイリアスも紹介!

Windows

PowerShellで作業をしていると、画面がコマンドと結果でごちゃごちゃになり、「一度まっさらにしたい!」と思うことがありますよね。

そんなときに便利なのが、PowerShellで画面をクリアするコマンド、Clear-Hostです。

この記事では、Clear-Hostの基本的な使い方、ショートカットキーやエイリアスとの関係、環境による挙動の違いまで、初心者にもわかりやすく解説します。

コマンドライン操作の快適性をアップさせるちょっとしたコツも紹介しています!

スポンサーリンク

Clear-Hostとは?

Clear-Hostは、PowerShellでコンソール画面をクリア(初期化)するコマンドレットです。

コマンドや出力結果で埋まった画面を一瞬でリセットできるため、以下のようなときに便利です:

  • 作業の区切りでリフレッシュしたいとき
  • 長い出力のあとに見やすく整理したいとき
  • スクリプトの途中で画面をきれいにしたいとき
  • デバッグ中にコンソール出力をクリアしたいとき
  • プレゼンテーションやスクリーンショット撮影前に画面を整理したいとき

実は、Clear-Hostは標準のコマンドレットではなく、PowerShellプロファイル内で定義された関数です。

しかし、標準で組み込まれているため通常のコマンドレットと同様に使用できます。

Clear-Hostの基本的な使い方

PowerShellのコンソールまたはISE(統合スクリプト環境)で以下のように入力するだけです:

Clear-Host

これで、現在のセッション画面がまっさらにクリアされます。

ただし、注意点として、Clear-Hostを実行してもコマンド履歴(上矢印キーで呼び出せる過去のコマンド)はクリアされません。

画面表示のみをリセットする機能です。

ショートカットキーで画面をクリアする方法

手で毎回打つのは面倒…という方は、ショートカットキー「Ctrl + L」を使いましょう。

対応環境:

  • Windows PowerShell → OK
  • PowerShell Core(7以降) → OK
  • Windows Terminal → OK
  • 一部ターミナルアプリでは動作しないことがあるため注意

PowerShell ISEでは「Ctrl + L」は機能しないので注意が必要です。

代わりに「Ctrl + R」(Run Script)などが割り当てられています。

その他のショートカット:

  • Visual Studio Code内のPowerShellターミナル: 「Ctrl + K」
  • Windows Terminal: 「Ctrl + L」または「Ctrl + Shift + K」

clsとの違いとエイリアスの関係

実は、PowerShellでは以下のような別名(エイリアス)でも同じ動作をします:

cls

なぜ使えるの?

  • clsClear-Host のエイリアス(別名)として定義されているからです。
  • Get-Alias cls を実行すると、Clear-Host と表示されます。

またCMDコマンドプロンプトとの互換性も意識されています:

  • Windowsの古いコマンドプロンプト(CMD.EXE)でもclsコマンドが画面クリア機能でした
  • PowerShellでもこの操作感を継承するためにclsというエイリアスが用意されています

つまり、

Clear-Host

cls

も同じ意味です。好みや習慣で使い分ければOK!

他のエイリアスも確認してみよう

Get-Alias | Where-Object {$_.Definition -eq "Clear-Host"}

この結果、clearclsClear-Hostのエイリアスであることがわかります。

スクリプト内で画面をリセットしたいときは?

PowerShellスクリプト(.ps1)に以下を入れておけば、スクリプト実行時に画面がクリアされた状態から始まるようにできます:

Clear-Host
# または
cls

これにより、ログや出力が見やすく整理されます。

実践的な例:スクリプト内での活用

# 画面をクリア
Clear-Host

# タイトル表示
Write-Host "システム情報収集ツール" -ForegroundColor Cyan
Write-Host "======================" -ForegroundColor Cyan

# 処理実行
Get-Process | Sort-Object CPU -Descending | Select-Object -First 5

Write-Host "`n[完了] Enter キーで続行..."
Read-Host

これにより、スクリプト実行時に画面がクリアされ、きれいな状態から処理結果が表示されます。

よくあるトラブルとその対処法

トラブル例原因と対策
clsが効かないエイリアスが無効化されている、または別環境(例:CMDやWSL)を使っている。Clear-Hostを直接使ってみてください。
Ctrl + L が効かないPowerShellウィンドウの種類(Windows Terminal、VSCodeターミナルなど)で非対応の可能性あり。それぞれのアプリケーション固有のショートカットを確認してください。
PowerShell ISEで動作しないISEは独自のエディタ環境のため、標準ショートカットが異なります。メニューの「表示」→「出力ペインのクリア」を使用するか、コマンドを直接入力してください。
スクロールバックバッファが残るClear-Hostはバッファ全体ではなく画面表示のみをクリアします。完全にバッファをクリアするには、ターミナル固有の設定が必要な場合があります。

特殊な使用例:リモートセッションでの画面クリア

# リモートコンピュータでの実行
Invoke-Command -ComputerName RemotePC -ScriptBlock {
    Clear-Host
    Get-Process
}

リモートセッションでは、Clear-Hostがローカル端末に影響する場合があるので注意が必要です。

さらに進んだテクニック

プロファイルで独自のクリア関数を作成

# $PROFILE に追加
function Clear-HostAndTitle {
    Clear-Host
    Write-Host "=== $(Get-Date) ===" -ForegroundColor Green
    Write-Host "=== $env:USERNAME @ $env:COMPUTERNAME ===" -ForegroundColor Green
    Write-Host ""
}

Set-Alias clr Clear-HostAndTitle

これで、clrと入力するだけで画面がクリアされ、現在の日時とユーザー情報が表示されます。

画面の一部だけをクリア

完全にクリアするのではなく、特定の行だけを消したい場合:

function Clear-CurrentLine {
    $cursorTop = [Console]::CursorTop
    [Console]::SetCursorPosition(0, $cursorTop)
    [Console]::Write(new-object string(' ', [Console]::WindowWidth))
    [Console]::SetCursorPosition(0, $cursorTop)
}

まとめ:画面をきれいにして効率アップ!

PowerShellで作業を快適に進めるなら、Clear-Host(またはcls)は覚えておいて損のない基本コマンドです。

特にスクリプトの先頭や長い処理の合間に使うことで、視認性の高い実行環境が実現できます。

ポイントまとめ

  • Clear-Host は画面をクリアするPowerShellの基本コマンド
  • cls はそのエイリアスで、どちらでもOK
  • ショートカットは「Ctrl + L」(環境によって異なる)
  • スクリプト内でも使えるため、整理された出力に最適!
  • ただし、コマンド履歴はクリアされない
  • ターミナルの種類によって挙動が異なる場合がある

PowerShellでの作業効率を高めるちょっとしたテクニックとして、今日からぜひ取り入れてみてください!

複雑なスクリプトを書いたり、多くの出力結果を確認したりする際に、画面を整理することで作業の効率と正確性が向上します。

さらに進んだPowerShellの使い方を学ぶ際も、この基本的なコマンドの理解は重要な第一歩となります。

PowerShellを使った自動化やシステム管理の世界への入り口として、まずは基本機能をしっかり押さえておきましょう。

コメント

タイトルとURLをコピーしました