Có cách nào để vô hiệu hóa tập lệnh lặp lại trong PowerShell ISE không?


27

Bất cứ khi nào tôi muốn kiểm tra thực thi tập lệnh của mình trong PowerShell ISE, toàn bộ tập lệnh sẽ được lặp lại tới bàn điều khiển trước khi thực thi. Sau đó, bất kỳ đầu ra thực tế nào từ tập lệnh sẽ được viết bắt đầu trên một dòng ngay sau đó. Điều này gây ra nhiều tiếng ồn trong bảng điều khiển và có thể khiến cho việc tìm ra tiếng vang kịch bản kết thúc và đầu ra bắt đầu khó khăn.

Có cách nào để vô hiệu hóa tiếng vang của tập lệnh này vào bàn điều khiển không?


Clear-Host sẽ là một công việc phù hợp?
Guy Thomas

1
@GuyThomas Tôi không muốn. Điều đó sẽ làm cho việc so sánh đầu ra giữa các lần chạy tiếp theo của tập lệnh trở nên khó khăn hơn.
Iszi

Chạy PowerShell ISE (x86) là vấn đề của tôi. Chạy phiên bản 64 bit sửa nó.
Paul Totzke

Câu trả lời:


36

Lưu tập lệnh ít nhất một lần. Điều này sẽ ngăn "tiếng vang tập lệnh" của nội dung tập lệnh. Thay vào đó, nó sẽ chỉ lặp lại đường dẫn đến tập lệnh đã lưu khi bạn chạy tập lệnh để kiểm tra.


0

Nếu bạn chỉ muốn làm cho đầu ra trên màn hình trở nên 'sạch hơn', chỉ cần thêm:

cls

ở đầu tập lệnh powershell của bạn. Điều này sẽ xóa đầu ra trong giao diện điều khiển. Kịch bản sẽ vẫn được viết trên màn hình trong giây lát nhưng nó sẽ bị xóa ngay khi mã của bạn thực sự bắt đầu thực thi.


-3

nếu bạn có một dòng chẳng hạn

cmd.exe /c "echo foo"

bạn có thể dẫn nó vào null và do đó không tạo ra đầu ra

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

vì vậy nếu bạn khởi chạy .ps1 từ dòng lệnh, bạn có thể làm một cái gì đó như thế này:

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

Điều này không khắc phục vấn đề. Điều này chỉ loại bỏ đầu ra của tập lệnh, tập lệnh vẫn được in.
8bittree
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.