PowerShellを使って作業をしていると、コンソール画面が大量の出力で埋まってしまうことがあります。そんなときに役立つのが Clear-Host
コマンドです。Clear-Host
を使えば、画面を一瞬でクリアでき、視認性を向上させることができます。本記事では、Clear-Host
の基本的な使い方から、他の方法との違い、ショートカットキーやスクリプトでの活用法まで詳しく解説します。PowerShellをより快適に使うために、ぜひ最後までお読みください。
PowerShellには、コンソール画面をクリアするための専用コマンドとして Clear-Host
があります。このコマンドを実行すると、スクロール可能な範囲を含めて、現在表示されている出力をすべて消去し、画面をリセットすることができます。
Clear-Host
または、短縮形としてエイリアス cls
や clear
も使用可能です。
cls
clear
どれも同じ動作をするため、好みに応じて使い分けることができます。
Clear-Host
は主に以下のような場面で活用されます。
Clear-Host
を実行することで、一度画面をリセットし、すっきりした状態で作業を続けることができます。Clear-Host
を挟むことで、前回の出力が邪魔にならず、重要な情報だけを表示できます。Clear-Host
を使用する際には、以下の点に注意してください。
Clear-Host
は画面上の出力を消去するだけであり、コマンドの履歴自体はPowerShell内部に残っています。$history
変数をクリアする方法があります。 Remove-Variable -Name history -Scope Global
Clear-Host
はPowerShellのホスト機能に直接影響を与えるため、標準出力にリダイレクトしたり、パイプラインでデータを処理したりすることはできません。Clear-Host | Out-File "log.txt" # 無効
PowerShellには、Clear-Host
以外にもコンソール画面をクリアする方法がいくつかあります。
Write-Host
で改行を出力することで、疑似的に画面をクリアする方法です。
Write-Host ("`n" * 50)
この方法は、画面をスクロールさせるだけなので、上の履歴はスクロールバックできます。
Clear-Host
と同様の動作をする.NETのメソッドです。
[console]::Clear()
この方法は、ホスト環境によって動作が異なることがあるため注意が必要です。
コマンドプロンプトの cls
をPowerShellから実行する方法です。
cmd /c cls
Windows環境では有効ですが、PowerShell Core(Linux/macOS)では動作しません。
PowerShellスクリプトの中で Clear-Host
を活用すると、より視認性の高い出力を実現できます。
Clear-Host
Write-Host "スクリプトを開始します..."
スクリプト実行時に前回の出力を消し、新しいログが見やすくなります。
for ($i=1; $i -le 10; $i++) {
Clear-Host
Write-Host "現在のカウント: $i"
Start-Sleep -Seconds 1
}
このようにループ内で Clear-Host
を使うと、数値が更新されるごとに画面がリフレッシュされ、アニメーションのような効果が得られます。
キーボードショートカットを使って Clear-Host
をすばやく実行する方法もあります。
Ctrl + L
を押すと Clear-Host
と同じように画面がクリアされます。Ctrl + L
は無効です。cls
は Clear-Host
のエイリアスとして用意されているため、ショートカット感覚で使用できます。PowerShellの Clear-Host
は、コンソール画面をクリアするシンプルながら便利なコマンドです。
Clear-Host
、または cls
clear
も同じ動作をする。Write-Host
で改行を挿入したり、[console]::Clear()
を使う方法もある。Ctrl + L
でのショートカット操作も可能(環境による)。PowerShellでの作業を効率化するために、ぜひ Clear-Host
を活用してください!