PowerShellやコマンドプロンプトのコマンド結果を簡単にクリップボードに保存する方法

スポンサーリンク
このブログではアフィリエイト広告を利用しています。

PowerShellコマンドプロンプトで実行したコマンドの結果をメモ帳やExcel等の別のアプリにコピーしたいと思ったことはありませんか。

結果を選択してそのままコピーしても問題ありませんが、行数が多いと選択が大変だったりします。そこで、コマンド結果を簡単にクリップボードに保存する方法を紹介します。

スポンサーリンク

コマンド結果を簡単にクリップボードに保存する方法

通常、コマンドの結果をクリップボードに保存するには、結果部分を選択してコピーするのではないかと思います。

コマンドプロンプトでのコマンド実行結果の画像

画面範囲内だけの結果であればこれでも特に困りませんが、複数ページに渡るコマンド結果であれば、選択画面どうですし、ミスをすることもあります。「clip」コマンドを使用すると、わざわざ選択しなくてもコマンド結果をすべてクリップボードに保存してくれます。

コマンドプロンプトのコマンド結果をクリップボードに保存する

クリップボードに保存したい内容が表示されるコマンドの後に「|(パイプ)」で「clip」コマンドをつなげて実行します。

[コマンド] | clip

コマンド例)

dir | clip

コマンドの実行結果は以下のようになります。

コマンドプロンプトでコマンド結果をクリップボードに保存した画像

コマンドプロンプト上に「dir」コマンドの結果は表示されませんが、全てクリップボードに保存されています。メモ帳にペーストすると以下のようになります。

コマンドプロンプトのコマンド結果をメモ帳に貼り付けた画像

PowerShellのコマンド結果をクリップボードに保存する

コマンドプロンプトと同様にクリップボードに保存したい内容が表示されるコマンドの後に「|(パイプ)」で「clip」コマンドをつなげて実行します。

[コマンド] | clip

コマンド例)

dir | clip

コマンドの実行結果は以下のようになります。

PowerShellでコマンド結果をクリップボードに保存した画像

PowerShell上に「dir」コマンドの結果は表示されませんが、全てクリップボードに保存されています。メモ帳に貼り付けると以下のようになります。

PowerShellのコマンド結果をメモ帳に貼り付けた画像

文字化けをしているのは既定では文字コードがPowerShellではUTF-8なのに対し、クリップボードはShift-JISであるためです。

文字化けを防ぐにはまず最初に以下のコマンドでPowerShellのアウトプットの文字コードをUTF-8からShift-JISに変更する必要があります。

$OutputEncoding = [Console]::OutputEncoding

文字コードを変更した後にクリップボードに保存します。

PowerShellで文字コードを変更した画像

するとメモ帳にも文字化けせずにペーストすることができます。

PowerShellで文字コードを変更した後にコマンド結果をメモ帳に貼り付けた画像

コメント