क्या पॉवरशेल ISE ​​में गूंजने वाली स्क्रिप्ट को अक्षम करने का कोई तरीका है?


27

जब भी मैं PowerShell ISE में अपनी स्क्रिप्ट के निष्पादन का परीक्षण करना चाहता हूं, तो निष्पादित होने से पहले पूरी स्क्रिप्ट कंसोल पर गूँज जाती है। फिर, स्क्रिप्ट से कोई भी वास्तविक आउटपुट तुरंत बाद एक लाइन पर लिखना शुरू हो जाता है। यह कंसोल में बहुत अधिक शोर डालता है, और यह पता लगाने के लिए मुश्किल बना सकता है कि स्क्रिप्ट इको कहां समाप्त होती है और आउटपुट शुरू होता है।

क्या कंसोल में स्क्रिप्ट की इस गूंज को अक्षम करने का कोई तरीका है?


क्या क्लियर-होस्ट एक उपयुक्त कार्य होगा?
गाइ थॉमस

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 Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.