क्या मैं अलग-अलग रंग में stderr आउटपुट दिखाने के लिए टर्मिनल को कॉन्फ़िगर कर सकता हूं


11

क्या किसी प्रक्रिया stderrसे stdoutआउटपुट की तुलना में स्वचालित रूप से आउटपुट को एक अलग रंग में दिखाने के लिए OS X में टर्मिनल को कॉन्फ़िगर करना संभव है ?

या यह केवल तभी संभव है जब प्रक्रिया रंगीन आउटपुट का उत्पादन कर रही है?


अफसोस की बात है कि 2019 तक इसका सही जवाब नहीं है । दोनों hiliteऔर stderredunmaintained और टूट कर रहे हैं और मैं अभी भी एक समाधान के लिए देख रहा हूँ।
सोरिन

@sorin मैं अभी hiliteHomebrew के माध्यम से स्थापित किया गया है , यह अभी भी उम्मीद के मुताबिक काम करता है (आश्चर्य होगा अगर वास्तव में नहीं, यह अपने कार्य को पूरा करने के लिए बहुत ही बुनियादी कार्यक्षमता का उपयोग करता है)।
nohillside

@sorin stderredकिसी भी अब काम नहीं कर सकता के रूप में यह स्थान गतिशील पुस्तकालयों से लोड किए गए हैं, जो एसआईपी nowaydays से रोका जा सकता है बदल रहा है
nohillside

जवाबों:


9

इसका कोई सीधा-सीधा हल नहीं है, लेकिन ऐसा करने के लिए कम से कम वर्कअराउंड उपलब्ध हैं।

  • आप स्थापित कर सकते हैं hilite एकल सी फ़ाइल (निर्माण करके hilite.cइस मामले में) या का उपयोग करके brew install hilite(साथ homebrew सिस्टम पर स्थापित)। इसका प्रयोग करें hilite <command>

  • आप इस उत्तर से सर्वरफॉल्ट ( commandअपनी स्क्रिप्ट / कमांड के नाम के साथ विकल्प ) से कमांडर का उपयोग लाल रंग में दिखाई देने के लिए कर सकते हैं (अन्य रंगों के लिए, ANSI एस्केप अनुक्रम सूची देखें और नीचे दिए गए कमांड में 31 मी को तदनुसार बदलें ):

    command 2> >(while read line; do echo -e "\e[01;31m$line\e[0m" >&2; done)
  • आप लाल रंग में रंग करने के लिए stderred का उपयोग कर सकते हैं ।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.