Czy istnieje sposób na wyłączenie echa skryptu w programie PowerShell ISE?


27

Ilekroć chcę przetestować wykonanie mojego skryptu w programie PowerShell ISE, cały skrypt jest odtwarzany w konsoli przed jego uruchomieniem. Następnie wszelkie rzeczywiste dane wyjściowe skryptu są zapisywane począwszy od wiersza natychmiast po tym. Powoduje to dużo hałasu w konsoli i może utrudnić ustalenie, gdzie kończy się echo skryptu, a zaczyna wyjście.

Czy istnieje sposób na wyłączenie echa skryptu w konsoli?


Czy Clear-Host będzie odpowiednim rozwiązaniem?
Guy Thomas

1
@GuyThomas Wolałbym nie. Utrudniłoby to porównanie wyników między kolejnymi uruchomieniami skryptu.
Iszi

Uruchamianie programu PowerShell ISE (x86) było moim problemem. Napraw wersję 64-bitową.
Paul Totzke

Odpowiedzi:


36

Zapisz skrypt co najmniej raz. Zapobiegnie to „echu skryptu” zawartości skryptu. Zamiast tego wyświetli ścieżkę do zapisanego skryptu tylko po uruchomieniu skryptu do testowania.


0

Jeśli chcesz, aby wyjście ekranowe było „czystsze”, po prostu dodaj:

cls

u góry skryptu programu PowerShell. Spowoduje to wyczyszczenie danych wyjściowych w konsoli. Skrypt nadal zostanie na chwilę napisany na ekranie, ale zostanie wyczyszczony, gdy tylko kod zacznie działać.


-3

jeśli masz na przykład linię

cmd.exe /c "echo foo"

możesz ustawić ścieżkę na zero, a zatem nie generować żadnych danych wyjściowych

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

więc jeśli uruchomisz .ps1 z wiersza poleceń, możesz zrobić coś takiego:

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

To nie rozwiązuje problemu. To po prostu usuwa dane wyjściowe skryptu, a sam skrypt nadal jest drukowany.
8bittree,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.