टर्मिनल के लिए पूर्व-निर्धारित रंग?


13

मैं यह याद रखने की कोशिश कर रहा था कि मैं .bashrcफ़ाइल के अंदर रंगों को पूर्व-परिभाषित कैसे कर सकता हूं, ताकि जब मुझे ${RED}उदाहरण के लिए कहा जाए तो उन्हें कॉल किया जा सके ।

मुझे याद नहीं है कि क्या यह करने का सही तरीका था, लेकिन यह कुछ इस तरह था अगर मैं याद रख सकता हूं;

NC="\033[0;0;0m"      # no color or formatting
RED="\033[1;49;91m"   # color red
BLU="\033[1;49;94m"   # color blue
GRN="\033[1;49;32m"   # color green

एक और मुझे याद है, functionइसलिए यह किसी भी समय कहीं भी उपयोग किया जा सकता था । मेरे पास एक फ़ाइल है जो मुझे दिखा रही है कि यह कैसे करना है लेकिन मैंने इस फाइल को खो दिया जो यह दिखाता है कि यह कैसे करना है, और मुझे याद नहीं है कि यह कैसे जाता है।

जवाबों:


12

आप अपने फंक्शन ~/.bashrcको इस प्रकार परिभाषित कर सकते हैं

showred(){
    export RED='\033[1;49;91m'
    export NC='\033[0;0;0m'
    echo -e $RED"$@"$NC
}

स्रोत के ~/.bashrcरूप में . ~/.bashrcया एक नया टर्मिनल खोलें और प्रयास करें।

यहाँ छवि विवरण दर्ज करें

साथ ही आप टर्मिनल का उपयोग करते हुए echoया printfनिम्नलिखित के रूप में कुछ लिखते समय रंगों में लिख सकते हैं ,

यहाँ छवि विवरण दर्ज करें


यह ऐसा करने का एक मित्रतापूर्ण और क्लीनर तरीका लगता है।


3

आपने $'...'सिंटैक्स देखा होगा , जो शेल को बैकस्लैश अनुक्रमों की व्याख्या करने का कारण बनता है:

NC=$'\e[0m'       # no color or formatting
RED=$'\e[1;31m'   # color red
GRN=$'\e[1;32m'   # color green
BLU=$'\e[1;34m'   # color blue

ऐसा करने का एक और तरीका, tput का उपयोग करना :

NC=$(tput sgr0)                  # no color or formatting
RED=$(tput bold; tput setaf 1)   # color red
GRN=$(tput bold; tput setaf 2)   # color green
BLU=$(tput bold; tput setaf 4)   # color blue

आप इन्हें souravc के उत्तर में आवरण कार्यों के साथ जोड़ सकते हैं; आप की जरूरत नहीं होगी -e

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