संस्करण 10.15 कैटालिना के अपडेट के बाद से, macOS टर्मिनल ऐप में डिफ़ॉल्ट रूप से Bash के बजाय Z shell (zsh) शामिल करता है। उस ने कहा, आपको अभी भी टर्मिनल के अंदर सफेद टेक्स्ट के साथ वही काली विंडो मिलती है। चीजों को उस तरह रहना नहीं है।
आप zsh प्रॉम्प्ट को न्यूनतम बनाने और स्थान का सर्वोत्तम उपयोग करने के लिए सजा सकते हैं। हम आपको दिखाएंगे कि टर्मिनल ऐप में zsh प्रॉम्प्ट को कैसे कस्टमाइज़ करें ताकि यह आपके द्वारा चुनी गई किसी भी पृष्ठभूमि पर अलग दिखे।
zsh प्रॉम्प्ट की मूल बातें
जब आप टर्मिनल ऐप लॉन्च करते हैं, तो यह कुछ उपयोगी जानकारी प्रदर्शित करता है, जैसे आपका अंतिम लॉगिन और कमांड प्रॉम्प्ट। यह आमतौर पर डिफ़ॉल्ट रूप से प्रॉम्प्ट जैसा दिखता है।
Last login: Wed Feb 3 22:00:40 on console
samir@MacBook-Air ~ %
zsh प्रॉम्प्ट आपके उपयोगकर्ता नाम और कंप्यूटर के मॉडल जैसे MacBook Air, MacBook Pro, Mac Mini, आदि से मिलकर टेक्स्ट की एक स्ट्रिंग दिखाता है। टिल्डा (~) प्रॉम्प्ट के स्थान को होम डायरेक्टरी में इंगित करता है।
सभी सेटिंग्स संग्रहीत करने के लिए Z शेल प्रोफाइल बनाएं
आमतौर पर, डिफ़ॉल्ट लुक को बदलने के लिए आपको सिस्टम फ़ाइलों के साथ छेड़छाड़ करनी पड़ती है। ऐसा इसलिए है क्योंकि macOS अपडेट सभी सिस्टम फ़ाइलों को डिफ़ॉल्ट पर रीसेट कर देते हैं, और आप अपने द्वारा किए गए सभी परिवर्तनों को खो देंगे।
इसलिए आप अपने zsh प्रोफाइल के लिए एक विशिष्ट सेटिंग्स फ़ाइल बना सकते हैं, जिसे डॉटफ़ाइल के रूप में जाना जाता है, जिसमें zsh प्रॉम्प्ट में आपके इच्छित सभी परिवर्तन और सेटिंग्स संग्रहीत हों।
ठीक है, आपको यह डॉटफ़ाइल macOS पर डिफ़ॉल्ट रूप से नहीं मिलेगी, इसलिए आपको एक बनानी होगी। एक नई .zshrc प्रोफाइल बनाने की सिफारिश की जाती है जिसमें zsh प्रॉम्प्ट के दिखने और व्यवहार जैसी सभी सेटिंग्स संग्रहीत हों।
यहां zsh प्रोफाइल (डॉटफ़ाइल) बनाने का तरीका बताया गया है:
1. टर्मिनल ऐप खोलें।
2. निम्न कमांड टाइप करें और रिटर्न कुंजी दबाएं।
touch ~/.zshrc
यह आपके उपयोगकर्ता खाते की होम डायरेक्टरी में एक .zshrc प्रोफाइल बनाएगा। यदि आपने छिपी हुई सिस्टम फ़ाइलों को देखने में सक्षम किया है तो आप इसे Finder में /User/<username>/ पथ के तहत देख सकते हैं।
उसके बाद, zsh प्रोफाइल हर बार टर्मिनल लॉन्च करने पर लॉगिन और इंटरैक्टिव शेल के लिए उपलब्ध होगी। हालांकि, यह SSH सत्रों में सक्रिय नहीं होगी।
टर्मिनल में zsh प्रॉम्प्ट को कस्टमाइज़ करें
आमतौर पर, डिफ़ॉल्ट zsh प्रॉम्प्ट उपयोगकर्ता नाम, मशीन नाम, और उपयोगकर्ता की होम डायरेक्टरी में शुरू होने वाले स्थान जैसी जानकारी रखता है। ये विवरण /etc/zshrc स्थान पर zsh शेल की सिस्टम फ़ाइल में संग्रहीत हैं।
PS1="%n@%m %1~ %#"
चरों की इस स्ट्रिंग में:
- %n आपके खाते का उपयोगकर्ता नाम है।
- %m MacBook का मॉडल नाम है।
- %1~ प्रतीक का अर्थ है वर्तमान कार्यशील डायरेक्टरी पथ जहां ~ $HOME डायरेक्टरी स्थान को हटा देता है।
- %# का अर्थ है कि यदि शेल रूट (एडमिनिस्ट्रेटर) विशेषाधिकारों के साथ चल रहा है तो प्रॉम्प्ट # दिखाएगा, अन्यथा % प्रदान करता है।
डिफ़ॉल्ट zsh प्रॉम्प्ट में कोई भी परिवर्तन करने के लिए, आपको प्रॉम्प्ट के लिए प्रासंगिक मान जोड़ने होंगे ताकि यह डिफ़ॉल्ट से अलग दिखाई दे।
यहां बताया गया है कि इसके बारे में कैसे जाना जाए। टर्मिनल खोलें, निम्न कमांड टाइप करें, और एंटर दबाएं।
nano ~/.zshrc
यदि आप इसे पहली बार एक्सेस कर रहे हैं तो यह खाली होगा। आप PROMPT='...' टेक्स्ट के साथ एक नई लाइन जोड़ सकते हैं और दीर्घवृत्त में प्रासंगिक मान शामिल कर सकते हैं।
zsh प्रॉम्प्ट के लिए एक सरल संशोधन के लिए, आप इन मानों को .zshrc प्रोफाइल में टाइप कर सकते हैं।
PROMPT='%n~$'
उन परिवर्तनों को फ़ाइल में पुष्टि करने के लिए Ctrl + O दबाएं, और फिर नैनो एडिटर से बाहर निकलने के लिए Ctrl + X दबाएं।
एक नई टर्मिनल विंडो खोलें ताकि आपके द्वारा किए गए परिवर्तनों की पुष्टि और दृश्य हो सके। आपका नया zsh प्रॉम्प्ट आपके Mac के उपयोगकर्ता नाम, होम डायरेक्टरी, और अंत में $ प्रतीक दिखाएगा।
zsh प्रॉम्प्ट में दिनांक और समय जोड़ें
अपने उपयोगकर्ता नाम के अलावा, आप वर्तमान दिनांक या समय जोड़ सकते हैं ताकि आपको सक्रिय टर्मिनल विंडो से दूर देखे बिना उस जानकारी की जांच न करनी पड़े।
टर्मिनल लॉन्च करें और .zshrc प्रोफाइल खोलें।
nano ~/.zshrc
प्रॉम्प्ट में दिनांक शामिल करने के लिए, आप yy-mm-dd प्रारूप में प्रकट होने के लिए दिनांक के लिए %D या mm/dd/yy प्रारूप में प्रकट होने के लिए %W का उपयोग कर सकते हैं। तब नया प्रॉम्प्ट इस तरह दिखाई देगा
PROMPT='%n:%W:~$'
यदि आप zsh प्रॉम्प्ट में सिस्टम समय शामिल करना चाहते हैं, तो 24-घंटे प्रारूप में वर्तमान समय के लिए %T, am/pm या 12-घंटे प्रारूप में प्रकट होने के लिए समय के लिए %t, या सेकंड के साथ 24-घंटे प्रारूप में समय प्रदर्शित करने के लिए %* का उपयोग करें।
PROMPT='%n:%T:~$'
zsh प्रॉम्प्ट में टेक्स्ट में रंग जोड़ें
क्या आप zsh प्रॉम्प्ट के सफेद टेक्स्ट से ऊब गए हैं? टर्मिनल ऐप को रंगों के साथ संशोधित करने के अलावा, आप टेक्स्ट में कुछ रंग जोड़ सकते हैं ताकि आपको एक अच्छा दृश्य ब्रेक मिले।
टर्मिनल लॉन्च करें और .zshrc प्रोफाइल खोलें।
nano ~/.zshrc
zsh प्रॉम्प्ट टेक्स्ट के लिए रंग और ग्रे के रंगों का समर्थन करता है जैसे कि यह पृष्ठभूमि का पूरक हो। आप काले, सफेद, पीले, हरे, लाल, नीले, सियान, और मैजेंटा के बीच अग्रभूमि (टेक्स्ट) रंग चुन सकते हैं।
यहां उनका उपयोग करने का तरीका बताया गया है।
PROMPT='%F{cyan}%n%f:~$'
यदि आप एक विशिष्ट शेड चुनना चाहते हैं, तो आप टर्मिनल द्वारा समर्थित 0 से 256 8-बिट रंगों के बीच चयन कर सकते हैं। रंगों के संख्यात्मक मूल्यों का उपयोग करने का तरीका यहां बताया गया है।
PROMPT='%F{51}%n%f:~$'
आप जिस टेक्स्ट को रंगना चाहते हैं उसके बीच %F और %f डिफ़ॉल्ट अग्रभूमि रंग चरों को रखने की आवश्यकता है।
zsh प्रॉम्प्ट में दृश्य प्रभाव जोड़ना
यदि प्रॉम्प्ट के टेक्स्ट को रंगना पर्याप्त नहीं है, तो आप अपने zsh प्रॉम्प्ट को हाइलाइट कर सकते हैं ताकि यह टेक्स्ट दीवार के बीच अलग दिखे, और आप इसे आसानी से देख सकें। शुरुआत के लिए, आप zsh प्रॉम्प्ट को बोल्ड कर सकते हैं।
PROMPT='%B%F{51}%n%f%b:~$'
प्रासंगिक टेक्स्ट के बीच शुरू में %B जोड़कर और अंत में %b डालकर यह बोल्ड हो जाएगा।
इसी तरह, आप टेक्स्ट को हाइलाइट करने के लिए शुरू में %S और अंत में %s डाल सकते हैं। हाइलाइट आपके द्वारा %S और %s चरों के बीच दिखाने के लिए चुने गए रंग को ले जाएगा।
PROMPT='%S%F{51}%n%f%s:~$'
आप zsh प्रॉम्प्ट के टेक्स्ट को अंडरलाइन भी कर सकते हैं। प्रॉम्प्ट में अंडरलाइन जोड़ने के लिए, आप प्रासंगिक टेक्स्ट के शुरू में %U चर और अंत में %u शामिल कर सकते हैं।
PROMPT='%U%F{51}%n%f%u:~$'
zsh प्रॉम्प्ट से अंतिम लॉगिन विवरण हटाएं
टर्मिनल ऐप में अंतिम लॉगिन समय प्रकट करने वाली शीर्ष पंक्ति को छिपाना या अक्षम करना आपके zsh प्रॉम्प्ट को एक साफ रूप दे सकता है। आप उस जानकारी को छिपाने के लिए निम्न कमांड का उपयोग कर सकते हैं।
touch ~/.hushlogin
अगली बार जब आप टर्मिनल खोलेंगे, तो आप zsh प्रॉम्प्ट के ऊपर कुछ भी नहीं देखेंगे।
टर्मिनल में zsh प्रॉम्प्ट को मसाला दें
भले ही आप कभी-कभी macOS पर टर्मिनल ऐप का उपयोग करते हों, आप zsh प्रॉम्प्ट के दिखने के तरीके को समायोजित कर सकते हैं। आप इसे बोल्ड, अंडरलाइन, छोटा कर सकते हैं, और यहां तक कि इसमें दिनांक और समय भी शामिल कर सकते हैं।
अब जब आपने zsh प्रॉम्प्ट को कस्टमाइज़ करना शुरू कर दिया है, तो थोड़ा प्रयोग करें और इसे अपना बनाएं।