มีวิธีปิดการใช้งานสคริปต์สะท้อนใน PowerShell ISE หรือไม่


27

เมื่อใดก็ตามที่ฉันต้องการทดสอบการเรียกใช้สคริปต์ใน PowerShell ISE สคริปต์ทั้งหมดจะถูกสะท้อนไปยังคอนโซลก่อนที่จะดำเนินการ จากนั้นเอาต์พุตใด ๆ ที่เกิดขึ้นจริงจากสคริปต์จะถูกเขียนโดยเริ่มจากบรรทัดถัดไปทันที สิ่งนี้ทำให้เกิดเสียงดังรบกวนในคอนโซลและสามารถทำให้ยุ่งยากในการค้นหาว่าสคริปต์ดังก้องจบลงที่ใดและเอาต์พุตเริ่มต้นขึ้น

มีวิธีปิดการใช้งานการสะท้อนสคริปต์นี้ลงในคอนโซลหรือไม่?


Clear-Host จะเป็นงานที่เหมาะสมหรือไม่?
Guy Thomas

1
@GuyThomas ฉันไม่ต้องการ ซึ่งจะทำให้ยากต่อการเปรียบเทียบเอาต์พุตระหว่างการรันสคริปต์ในภายหลัง
Iszi

การเรียกใช้ PowerShell ISE (x86) เป็นปัญหาของฉัน การรันเวอร์ชัน 64 บิตจะแก้ไข
Paul Totzke

คำตอบ:


36

บันทึกสคริปต์อย่างน้อยหนึ่งครั้ง สิ่งนี้จะป้องกัน "สคริปต์ echo" ของเนื้อหาของสคริปต์ แต่จะเป็นการสะท้อนเส้นทางไปยังสคริปต์ที่บันทึกไว้เมื่อคุณเรียกใช้สคริปต์เพื่อทำการทดสอบเท่านั้น


0

หากคุณแค่ต้องการทำให้หน้าจอสะอาดขึ้นให้เพิ่ม:

cls

ที่ด้านบนของสคริปต์ PowerShell ของคุณ สิ่งนี้จะเคลียร์เอาต์พุตในคอนโซล สคริปต์จะยังคงถูกเขียนบนหน้าจอในไม่ช้า แต่มันจะถูกล้างทันทีที่รหัสของคุณเริ่มดำเนินการจริง


-3

หากคุณมีสายเช่น

cmd.exe /c "echo foo"

คุณสามารถกำหนดเส้นทางให้เป็นโมฆะดังนั้นจึงไม่สร้างเอาต์พุต

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.