MacOS टर्मिनल में zsh Prompt को कैसे कस्टमाइज़ करें

10.15 कैटालिना के संस्करण के अपडेट के बाद से, macOS में टर्मिनल ऐप में बैश के बजाय डिफ़ॉल्ट रूप में Z शेल (zsh) शामिल है। उस ने कहा, आपको अभी भी टर्मिनल के अंदर सफेद पाठ के साथ एक ही काली खिड़की मिलती है। चीजों को इस तरह से नहीं रहना है।

आप इसे कम से कम करने और अंतरिक्ष का सर्वश्रेष्ठ बनाने के लिए zsh प्रॉम्प्ट को सजाना कर सकते हैं। हम आपको दिखाएंगे कि आप जो भी पृष्ठभूमि चुनें, टर्मिनल ऐप में zsh प्रॉम्प्ट को कैसे अनुकूलित करें।

Zsh प्रॉम्प्ट की मूल बातें

जब आप टर्मिनल ऐप लॉन्च करते हैं, तो यह आपके पिछले लॉगिन और कमांड प्रॉम्प्ट जैसी कुछ उपयोगी जानकारी प्रदर्शित करता है। यह वह संकेत है जो आमतौर पर डिफ़ॉल्ट रूप से दिखता है।

 Last login: Wed Feb 3 22:00:40 on console
samir@MacBook-Air ~ %

Zsh प्रॉम्प्ट में आपके उपयोगकर्ता नाम और मैकबुक एयर, मैकबुक प्रो, मैक मिनी, आदि जैसे कंप्यूटर के मॉडल से युक्त पाठ की एक स्ट्रिंग दिखाई देती है। टिल्ड (~) होम डायरेक्टरी में प्रॉम्प्ट के स्थान को इंगित करता है।

संबंधित: मैक पर टर्मिनल कैसे खोलें

सभी सेटिंग्स को स्टोर करने के लिए एक Z शेल प्रोफाइल बनाएं

आमतौर पर, आपको डिफ़ॉल्ट रूप को बदलने के लिए सिस्टम फ़ाइलों के साथ टिंकर करना पड़ता है। ऐसा इसलिए है क्योंकि macOS अपडेट डिफ़ॉल्ट रूप से सभी सिस्टम फ़ाइल को रीसेट कर देता है, और आप अपने द्वारा किए गए सभी परिवर्तनों को खो देंगे।

तो आप एक विशिष्ट सेटिंग्स फ़ाइल बना सकते हैं, जिसे एक dotfile के रूप में जाना जाता है, अपने zsh प्रोफ़ाइल के लिए सभी परिवर्तन और सेटिंग्स जो आप zsh प्रॉम्प्ट में संग्रहीत करना चाहते हैं।

ठीक है, आपको यह डॉटफ़ाइल मैकओएस पर डिफ़ॉल्ट रूप से नहीं मिलेगा, इसलिए आपको एक बनाना होगा। एक नई .zshrc प्रोफ़ाइल बनाने की सिफारिश की जाती है, जैसे कि zsh प्रॉम्प्ट दिखती है और व्यवहार करती है।

यहाँ कैसे zsh प्रोफ़ाइल (dotfile) बनाने के लिए है:

1. टर्मिनल ऐप खोलें।

2. निम्न कमांड टाइप करें और रिटर्न की को हिट करें।

 touch ~/.zshrc

वह आपके उपयोगकर्ता खाते की होम निर्देशिका में .zshrc प्रोफ़ाइल बनाएगा। यदि आप छुपी हुई सिस्टम फ़ाइलों को देखने में सक्षम हैं, तो आप इसे खोजक के तहत / उपयोगकर्ता / <उपयोगकर्ता नाम> पथ में देख सकते हैं।

उसके बाद, हर बार जब आप टर्मिनल लॉन्च करते हैं, तो zsh प्रोफाइल लॉगिन और इंटरेक्टिव गोले के लिए उपलब्ध होगा। हालाँकि, यह SSH सत्रों में सक्रिय नहीं होगा।

Zsh प्रॉम्प्ट में आपके द्वारा किए जाने वाले सभी परिवर्तन इस प्रोफ़ाइल में शामिल किए जा सकते हैं।

टर्मिनल में zsh Prompt को कस्टमाइज़ करें

आमतौर पर, डिफ़ॉल्ट zsh प्रॉम्प्ट उपयोगकर्ता के होम डायरेक्टरी में शुरू होने वाले उपयोगकर्ता नाम, मशीन का नाम और स्थान जैसी जानकारी को वहन करता है। ये विवरण zsh शेल सिस्टम फाइल में / etc / zshrc स्थान पर संग्रहीत हैं।

 PS1="%n@%m %1~ %#"

चर की इस स्ट्रिंग में:

  • % n आपके खाते का उपयोगकर्ता नाम है।
  • % m मैकबुक का मॉडल नाम है।
  • % 1 ~ प्रतीक का अर्थ है वर्तमान कार्य निर्देशिका पथ जहाँ ~ स्ट्रिप्स $ गृह निर्देशिका स्थान है।
  • % # का अर्थ है कि प्रॉम्प्ट # दिखाएगा यदि शेल रूट (व्यवस्थापक) विशेषाधिकारों के साथ चल रहा है, या यदि यह नहीं करता है तो% प्रदान करता है।

डिफ़ॉल्ट zsh प्रॉम्प्ट में कोई भी बदलाव करने के लिए, आपको डिफ़ॉल्ट से अलग दिखने के लिए प्रॉम्प्ट के लिए प्रासंगिक मान जोड़ना होगा।

यहाँ है कि कैसे के बारे में जाने के लिए। टर्मिनल खोलें, निम्न कमांड टाइप करें, और एंटर दबाएं।

 nano ~/.zshrc

यदि आप इसे पहली बार एक्सेस कर रहे हैं तो यह खाली हो जाएगा। आप PROMPT = '…' पाठ के साथ एक नई पंक्ति जोड़ सकते हैं और दीर्घवृत्त में प्रासंगिक मान शामिल कर सकते हैं।

Zsh प्रॉम्प्ट के लिए एक सरल संशोधन के लिए, आप .zshrc प्रोफ़ाइल में इन मानों को टाइप कर सकते हैं।

 PROMPT='%n~$'

फ़ाइल में उन परिवर्तनों की पुष्टि करने के लिए Ctrl + O को हिट करें, और फिर नैनो संपादक से बाहर निकलने के लिए Ctrl + X दबाएं

अपने द्वारा किए गए परिवर्तनों की पुष्टि करने और देखने के लिए एक नई टर्मिनल विंडो खोलें। आपका नया zsh प्रॉम्प्ट आपके मैक के यूजरनेम, होम डायरेक्टरी और अंत में $ प्रतीक को दिखाएगा।

तारीख और समय जोड़ें zsh Prompt में

अपने उपयोगकर्ता नाम के अलावा, आप वर्तमान तिथि या समय को जोड़ सकते हैं ताकि आपको उस जानकारी की जांच करने के लिए सक्रिय टर्मिनल विंडो से दूर न देखना पड़े।

टर्मिनल लॉन्च करें और .zshrc प्रोफाइल खोलें।

 nano ~/.zshrc

प्रॉम्प्ट में दिनांक शामिल करने के लिए, आप y / mm-dd प्रारूप में प्रदर्शित होने के लिए% D का उपयोग कर सकते हैं या इसके लिए mm / dd / yy प्रारूप में प्रदर्शित होने के लिए% W का उपयोग कर सकते हैं। फिर नया प्रॉम्प्ट जैसा दिखाई देगा

 PROMPT='%n:%W:~$'

यदि आप सिस्टम समय को zsh प्रॉम्प्ट में शामिल करना चाहते हैं, तो 24 घंटे के प्रारूप में वर्तमान समय के लिए% T जोड़ें,% t को am / pm या 12-घंटे के प्रारूप में प्रदर्शित होने के लिए, या प्रदर्शित करने के लिए% * का उपयोग करें। सेकंड के साथ-साथ 24-घंटे के प्रारूप में समय।

 PROMPT='%n:%T:~$'

Zsh Prompt में टेक्स्ट में रंग जोड़ें

क्या आप zsh प्रॉम्प्ट के सफेद पाठ से ऊब गए हैं? रंगों के साथ टर्मिनल ऐप को संशोधित करने के अलावा, आप पाठ में कुछ रंग जोड़ सकते हैं ताकि आपको एक अच्छा दृश्य ब्रेक मिल सके।

टर्मिनल लॉन्च करें और .zshrc प्रोफाइल खोलें।

 nano ~/.zshrc

Zsh रंग और रंगों के रंगों को शीघ्र पाठ का समर्थन करता है जैसे कि यह पृष्ठभूमि को पूरक करता है। आप काले, सफेद, पीले, हरे, लाल, नीले, सियान और मैजेंटा के बीच एक अग्रभूमि (पाठ) रंग चुन सकते हैं।

यहाँ उनका उपयोग कैसे करना है।

 PROMPT='%F{cyan}%n%f:~$'

यदि आप एक विशिष्ट छाया चुनना चाहते हैं, तो आप 0 से 256 8-बिट रंगों के बीच चयन कर सकते हैं जो टर्मिनल का समर्थन करता है। यहां रंगों के संख्यात्मक मूल्यों का उपयोग करने का तरीका बताया गया है।

 PROMPT='%F{51}%n%f:~$'

आप जिस रंग को प्रासंगिक बनाना चाहते हैं, उसके बीच आपको% F और% f डिफ़ॉल्ट अग्रभूमि रंग चर रखने की आवश्यकता है।

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 Prompt से

टर्मिनल ऐप में अंतिम लॉगिन समय का खुलासा करने वाली शीर्ष रेखा को छुपाना या अक्षम करना आपके zsh को एक क्लीनर रूप दे सकता है। आप उस जानकारी को छिपाने के लिए निम्न कमांड का उपयोग कर सकते हैं।

 touch ~/.hushlogin

अगली बार जब आप टर्मिनल खोलेंगे, तो आपको zsh प्रॉम्प्ट के ऊपर कुछ भी दिखाई नहीं देगा।

टर्मिनल में zsh Prompt को मसाला दें

यहां तक ​​कि अगर आप कभी-कभी macOS पर टर्मिनल ऐप का उपयोग करते हैं, तो आप जिस तरह से ज़ीश प्रॉम्प्ट दिखाई देते हैं, उसे ट्विक कर सकते हैं। आप इसमें बोल्ड, रेखांकित, छोटा, और यहां तक ​​कि दिनांक और समय शामिल कर सकते हैं।

अब जब आपने zsh प्रॉम्प्ट को अनुकूलित करना शुरू कर दिया है, तो थोड़ा प्रयोग करें और इसे अपना बनाएं।