Чи є спосіб відключити скрипт, що лунає в ISS PowerShell?


27

Щоразу, коли я хочу перевірити виконання мого сценарію в PowerShell ISE, весь скрипт перегукується з консоллю перед його виконанням. Потім будь-який фактичний вихід із сценарію пишеться, починаючи з рядка одразу після цього. Це створює багато шуму в консолі, і може зробити це складно знайти місце, де закінчується відлуння сценарію і починається вихід.

Чи є спосіб відключити це відлуння сценарію в консоль?


Чи буде Clear-Host підходящим для вирішення проблем?
Хлопець Томас

1
@GuyThomas я б краще не став. Це ускладнить порівняння результатів між наступними запусками сценарію.
Іссі

Запуск PowerShell ISE (x86) був моєю проблемою. Запуск 64-бітної версії виправити це.
Пол Тотке

Відповіді:


36

Збережіть сценарій хоча б один раз. Це запобіжить "відлуння сценарію" вмісту сценарію. Натомість він повторюватиме шлях лише до збереженого сценарію, коли ви запустите скрипт для тестування.


0

Якщо ви просто хочете зробити екранний вихід "чистішим", просто додайте:

cls

у верхній частині сценарію. Це очистить вихід на консолі. Сценарій все одно буде написаний на екрані на мить, але він буде очищений, як тільки ваш код фактично почне виконувати.


-3

якщо у вас є лінія, наприклад

cmd.exe /c "echo foo"

ви можете відстежувати його до нуля і тому не давати жодного результату

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

тому якщо ви запускаєте .ps1 з командного рядка, ви можете зробити щось подібне:

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

Це не вирішує проблему. Це просто видаляє вихід сценарію, сам сценарій все ще надрукується.
8bittree
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.