'Git वर्णन' के आउटपुट के साथ एक चर शुरू करने का अजीब परिणाम


0

किसी कारण से यह कार्य: OUT=$(git describe HEAD) प्रिंटआउट को प्रिंट करता है (उदाहरण के लिए): fatal: No names found, cannot describe anything.

क्या यह एक सामान्य व्यवहार है? अन्य कमांड के साथ ऐसा क्यों नहीं होता है?

जवाबों:


1

वह वास्तव में है stderr आउटपुट, नहीं stdout। इंटरेक्टिव टर्मिनल से कमांड चलाते समय, दोनों stdout तथा stderr टर्मिनल पर जाने के लिए तैयार हैं।

अगर आप चाहते थे stderr आपके चर में उत्पादन (जो आप शायद नहीं करते हैं, लेकिन वैसे भी), इसे पुनर्निर्देशित करते हैं stdout इस तरह:

OUT=$(git describe HEAD 2>&1)

या यदि आप नहीं चाहते कि आपकी स्क्रिप्ट चलाने वाला व्यक्ति यह देखे stderr आउटपुट, इसे इस तरह फेंक दें:

OUT=$(git describe HEAD 2>/dev/null)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.