2011-06-15 12 views
5

एसटीडीईआरआर हैंडल कैसे काम करता है इसके बारे में उत्सुक? इसे सरल और केंद्रित रखने के लिए बैच फ़ाइलों को कहने के लिए इसे नीचे रख दें? मुझे पता है कि कई प्रोग्रामिंग भाषाएं STDERR स्वीकार करती हैं, इसलिए मुझे नहीं पता कि बोर्ड में शायद उपयोग अलग-अलग हैं या शायद सभी प्रोग्रामिंग भाषाओं के लिए एक आम कार्य है?एसटीडीईआरआर? यह क्या है? इसके सामान्य उपयोग क्या हैं?

यदि कोई व्यक्ति आपके द्वारा देखे गए सामान्य उपयोग पर कुछ उदाहरण प्रदान कर सकता है या कोई स्पष्टीकरण क्यों कर सकता है ??? स्थिति जो भयानक होगी।

अग्रिम धन्यवाद!

उत्तर

4

आमतौर पर आप त्रुटि संदेशों के लिए stderr का उपयोग करेंगे।

आप कमांड लाइन पर एक कार्यक्रम चलाने के हैं, तो आप अपने stdout और/या stderr

पर कब्जा कर सकते हैं उदाहरण के लिए:

myprogram.exe > stdout.txt 

stdout में myprogram.exe द्वारा लिखित कुछ भी कब्जा है और इसे स्थापित करेंगे stdout.txt में हालांकि, stderr को लिखी गई सामग्री stdout.txt में नहीं डाली जाएगी। इस प्रकार आप त्रुटि संदेशों को कैप्चर किए बिना प्रोग्राम के नियमित आउटपुट को कैप्चर कर सकते हैं।

+2

आप 'MyProgram साथ stderr उत्पादन प्राप्त कर सकते हैं 2> stderr.txt' – YXD

+0

' myprogram.exe &> stderr.txt' भी काम करता है –

+0

वैकल्पिक रूप से (कम से कम लिनक्स में) आप 'कह सकते हैं MyProgram 2> stderr.txt' – jpm

0

एसटीडीईआरआर मानक त्रुटि के लिए खड़ा है। यह, जैसा कि नाम से पता चलता है, मुख्य रूप से गलत व्यवहार की रिपोर्ट करने के लिए उपयोग किया जाता है। डिफ़ॉल्ट रूप से, मुझे पता है कि हर प्रणाली पर, मैं टर्मिनल को बस STDOUT की तरह इंगित करता हूं। हालांकि, इन इकाइयों को अलग से दर्शाया जाता है, हालांकि, उपयोगकर्ता को टर्मिनल पर केवल सामान्य आउटपुट प्रिंट करने और लॉग में त्रुटियों को पुनर्निर्देशित करने की अनुमति देता है (केवल एक उदाहरण)।

संबंधित मुद्दे