हाँ। ANSI टर्मिनल ANSI एस्केप कोड का समर्थन करते हैं । प्रत्येक Control Sequence Introducer
( CSI
) निम्नलिखित प्रारूप में कोड:
ESC[<<<CODE>>>
एस्की चरित्र 27
( ESC
चरित्र) या 1b
हेक्साडेसिमल में, उसके बाद एक बाएं वर्ग कोष्ठक, और फिर एक पत्र जिसका उपयोग करने के लिए कार्रवाई को दर्शाती है।
ध्यान दें कि ;
अलग मापदंडों की एक सूची सीधे <<<CODE>>>
पैरामीटर से पहले आपूर्ति की जा सकती है ।
अब, रंग CSI
कोड के एक सबसेट का उपयोग करते हैं , Select Graphic Rendition
कोड। ये फॉर्म में हैं:
ESC[<<<SGR>>>m
SGR
कोड एक पैरामीटर के रूप पारित कर दिया है CSI
। आपके प्रश्न के लिए प्रासंगिक SGR
कोड 30-49 हैं। कोड 30-39 अग्रभूमि रंग निर्धारित करते हैं। कोड 40-49 पृष्ठभूमि रंग निर्धारित करते हैं।
30 - Foreground Black
31 - Foreground Red
32 - Foreground Green
33 - Foreground Yellow
34 - Foreground Blue
35 - Foreground Magenta
36 - Foreground Cyan
37 - Foreground White
40 - Background Black
41 - Background Red
42 - Background Green
43 - Background Yellow
44 - Background Blue
45 - Background Magenta
46 - Background Cyan
47 - Background White
कोड 38 और 48 विशेष कोड हैं। ये वे हैं जो आपको RGB मान का उपयोग करने की अनुमति देते हैं। इनके लिए प्रारूप यह है:
ESC[38;2;<r>;<g>;<b>m (Foreground)
ESC[48;2;<r>;<g>;<b>m (Background)
नोट: वैकल्पिक उपयोगों में शामिल हैं \x1b[<3 or 4>8;5;<web safe color index>m
। इस उपयोग के साथ, एक पूरी तरह से अलग रंग एन्कोडिंग है। अधिक जानकारी के लिए इस उत्तर के शीर्ष पर स्थित लिंक देखें।
कोड 39 और 49 ने अपनी चूक के लिए अग्रभूमि और पृष्ठभूमि रंग निर्धारित किए हैं, जो टर्मिनल-दर-टर्मिनल आधार पर परिभाषित किए गए हैं।
व्यवहार में, रंग 30-37 40-47 उनके लेबल जो कहते हैं, उससे थोड़ा अलग हैं।
0 - Black
1 - Darker Red
2 - Darker Green
3 - Dark/Yellow or Brown (varies between terminals)
4 - Dark Blue
5 - Dark Magenta
6 - Dark Cyan
7 - Light Grey
हल्के रंग प्राप्त करने के लिए, आप बोल्ड के लिए SGI का उपयोग करें 1
। बोल्ड एक भ्रामक नाम है। यह फॉन्ट को बोल्ड नहीं बनाता है। यह वास्तव में पाठ की चमक को बढ़ाता है। बोल्ड लागू रंगों के साथ:
0 - Dark Grey
1 - Bright Red
2 - Bright Green
3 - Bright Yellow
4 - Bright Blue
5 - Bright Magenta
6 - Bright Cyan
7 - White
सूचना: रंगों की संख्या के अंतिम दो खंड दोनों- और पृष्ठभूमि ( <index> + (30 or 40)
) के लिए प्रासंगिक हैं ।
सभी शैलियों को हटाने के लिए (डिफ़ॉल्ट / सामान्य मोड पर वापस) SGR
0 का उपयोग करें ।
CSI
कोड सभी ग्राफिकल नहीं हैं। उदाहरण के लिए, ESC[2J
अपना टर्मिनल खाली कर देगा। ESC[<y>;<x>H
कर्सर स्थिति (1-अनुक्रमित) सेट करता है। अधिक जानकारी के लिए विकिपीडिया लेख देखें।
नोट: इनका परीक्षण करने के लिए, का उपयोग करें echo -e
या printf
।