खोज…


कंसोल अनुप्रयोग

PS> console_app.exe
PS> & console_app.exe
PS> Start-Process console_app.exe

जीयूआई अनुप्रयोग

PS> gui_app.exe (1)
PS> & gui_app.exe (2)
PS> & gui_app.exe | Out-Null (3)
PS> Start-Process gui_app.exe (4)
PS> Start-Process gui_app.exe -Wait (5)

GUI एप्लिकेशन एक अलग प्रक्रिया में लॉन्च होते हैं, और तुरंत PowerShell होस्ट पर नियंत्रण वापस कर देंगे। कभी-कभी आपको अगले PowerShell कथन को निष्पादित करने से पहले प्रसंस्करण को पूरा करने के लिए एप्लिकेशन की आवश्यकता होती है। यह $ null (3) के लिए एप्लिकेशन आउटपुट को पाइप करके या स्टार्ट-प्रोसेस के साथ -Wit स्विच (5) का उपयोग करके प्राप्त किया जा सकता है।

कंसोल स्ट्रीम

PS> $ErrorActionPreference = "Continue" (1)
PS> & console_app.exe *>&1 | % { $_ } (2)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.ErrorRecord] } (3)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.WarningRecord] } (4)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.VerboseRecord] } (5)
PS> & console_app.exe *>&1 (6)
PS> & console_app.exe 2>&1 (7)

स्ट्रीम 2 में System.Management.Automation.ErrorRecord ऑब्जेक्ट हैं। ध्यान दें कि कुछ एप्लिकेशन जैसे git.exe सूचनात्मक उद्देश्यों के लिए "त्रुटि स्ट्रीम" का उपयोग करते हैं, जो कि आवश्यक रूप से त्रुटियां नहीं हैं। इस मामले में त्रुटि कोड को त्रुटियों के रूप में व्याख्या किया जाना चाहिए या नहीं यह निर्धारित करने के लिए निकास कोड को देखना सबसे अच्छा है।

PowerShell इन धाराओं को समझता है: आउटपुट, त्रुटि, चेतावनी, क्रिया, डिबग, प्रगति। मूल अनुप्रयोग आमतौर पर केवल इन धाराओं का उपयोग करते हैं: आउटपुट, त्रुटि, चेतावनी।

PowerShell 5 में, सभी स्ट्रीम को मानक आउटपुट / सफलता स्ट्रीम (6) पर पुनर्निर्देशित किया जा सकता है।

पहले के PowerShell संस्करणों में, केवल विशिष्ट स्ट्रीम मानक आउटपुट / सफलता स्ट्रीम (7) पर पुनर्निर्देशित की जा सकती हैं। इस उदाहरण में, "त्रुटि स्ट्रीम" को आउटपुट स्ट्रीम पर पुनर्निर्देशित किया जाएगा।

कोड से बाहर निकलें

PS> $LastExitCode
PS> $?
PS> $Error[0]

ये बिल्ट-इन PowerShell वैरिएबल हैं जो सबसे हालिया त्रुटि के बारे में अतिरिक्त जानकारी प्रदान करते हैं। $LastExitCode अंतिम मूल एप्लिकेशन का अंतिम निकास कोड है जिसे निष्पादित किया गया था। $? और $Error[0] अंतिम त्रुटि रिकॉर्ड है जो पावरशेल द्वारा उत्पन्न किया गया था।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow