PowerShell ISEでスクリプトエコーを無効にする方法はありますか?


27

PowerShell ISEでスクリプトの実行をテストするたびに、スクリプト全体が実行される前にコンソールにエコーされます。次に、スクリプトからの実際の出力は、直後の行から書き込まれます。これにより、コンソールに多くのノイズが発生し、スクリプトエコーが終了して出力が開始される場所を見つけるのが難しくなります。

このスクリプトのコンソールへのエコーを無効にする方法はありますか?


Clear-Hostは適切な回避策でしょうか?
ガイトーマス14年

1
@GuyThomasむしろしたくない。これにより、スクリプトの後続の実行間で出力を比較することが難しくなります。
イッツィ14年

PowerShell ISE(x86)の実行が私の問題でした。64ビットバージョンを実行すると修正されます。
ポールトッツケ

回答:


36

スクリプトを少なくとも1回保存します。これにより、スクリプトの内容の「スクリプトエコー」が防止されます。代わりに、テスト用のスクリプトを実行するときに、保存されたスクリプトへのパスのみをエコーし​​ます。


0

画面出力を「よりクリーン」にしたい場合は、次を追加します。

cls

PowerShellスクリプトの上部にあります。これにより、コンソールの出力がクリアされます。スクリプトは画面上に一時的に書き込まれますが、実際にコードの実行が開始されるとすぐにクリアされます。


-3

たとえば、ラインがある場合

cmd.exe /c "echo foo"

nullにパスできるため、出力は生成されません。

cmd.exe /c "echo foo" > $null

コマンドラインから.ps1を起動すると、次のようなことができます。

PS C:\Users\bodyi> foo.ps1 > $null

これで問題は解決しません。これにより、スクリプトの出力が削除されるだけで、スクリプト自体は引き続き印刷されます。
8bittree
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.