क्या रंगीन होने के लिए सिर, पूंछ, कम, आदि को पास रखने का कोई तरीका है?


26

वहाँ पाइप के माध्यम से पारित कर दिया पाठ की colorization रखने के लिए कोई तरीका है |करने के लिए head, tail, less, आदि?


कोई विशिष्ट आउटपुट प्रोग्राम? यह पाइप के माध्यम से डेटा भेजने वाले प्रोग्राम पर निर्भर करता है। head, tailआदि रंगों को हटाने वाले नहीं हैं, यह डेटा उत्पन्न करने वाला प्रोग्राम है जो आमतौर पर जांचता है कि आउटपुट कंसोल (रंगीन), फ़ाइल या पाइप (रंगीन नहीं) में जा रहा है या नहीं।
कुरिज्डमेटल

जवाबों:


15

मुझे लगता है कि आप से पाइपिंग कर रहे हैं lsऔर टर्मिनल रंग कोड को संरक्षित करना चाहते हैं। आप कह सकते हैं ls --color=always(डिफ़ॉल्ट के बजाय --color=auto), जो कोड्स को संरक्षित करेगा, लेकिन यह गारंटी नहीं देगा कि जिस चीज को आप समझ रहे हैं, उसे कैसे समझें।

यदि आप glarkइसके बजाय उपयोग करते हैं grepतो रंगों के साथ प्रदर्शित करने का प्रयास करेंगे।

यदि आप इसका उपयोग lessकरते हैं -Rतो रंगों के साथ प्रदर्शित करने का प्रयास करेंगे।


6
से पाइप कर रहा हूं git। मुझे पता चला कि इसमें समान विन्यास (जैसे। git config color.diff always) है जो रंगाई-पुताई करता रहता है।
टिमोफी गोर्शकोव

1
@ उस कॉन्फ़िगरेशन के साथ समस्या का कारण यह है कि यह किसी भी स्क्रिप्ट या कमांड को तोड़ देगा जो git diffआउटपुट को इनपुट के रूप में उपयोग करता है क्योंकि यह हमेशा एएनएसआई एस्केप कोड को आउटपुट करेगा।
KurzedMetal

@ श्रीधर, धन्यवाद! मेरे पास कोई स्क्रिप्ट नहीं है जो गिट से एक साफ आउटपुट पर भरोसा करती है इसलिए मेरे लिए यह काम करता है !! धन्यवाद !
आशुतोष जिंदल

मैंने इसे grep के लिए उपयोग किया है: grep "string" file.txt | headयह सुनिश्चित करने के लिए कि grep से परिणाम रंगीन था, मैंने इसे बस इस में बदल दियाgrep "string" file.txt --color=always | head
एमिल स्टेनस्ट्रॉम

13

यह उस प्रोग्राम पर निर्भर करता है जो पाइप में आउटपुट उत्पन्न करता है।

head, tailआदि रंगों को हटाने वाले नहीं हैं, यह प्रोग्राम डेटा उत्पन्न कर रहा है जो आमतौर पर जांचता है कि आउटपुट कंसोल (रंगीन), फ़ाइल या पाइप (रंगीन नहीं) में जा रहा है या नहीं

मुझे एक और एसयू क्यू एंड ए मिला, जो दिखा रहा है कि पाइपिंग प्रोग्राम्स को आउटपुट के लिए कैसे करना है जैसे कि वे एक कंसोल को आउटपुट भेज रहे हैं (एक कंसोल का अनुकरण करते हुए unbuffer)


क्या रंगाईकरण को color=autoमोड में रखने का कोई तरीका है (प्रोग्राम को लगता है कि आउटपुट पाइप के बजाय कंसोल पर जाता है)?
टिमोफी गोर्शकोव

@KurzedMetal एक प्रोग्राम कैसे करता है, उदाहरण के लिए head, tailआदि, यह पता लगाता है कि इसे दूसरे प्रोग्राम में पाइप किया जा रहा है (ताकि यह बिना रंगों के डेटा उत्पन्न कर सके, आदि)।
जॉर्ज बुकरन

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