इससे पहले कि आप दूर क्लिक करें, यह विशिष्ट नहीं है "मैं अपने बैश प्रॉम्प्ट को कैसे रंग देता हूं" सवाल है। मैंने पहले ही इस तरह दिखने के लिए अपने बैश प्रॉम्प्ट को अनुकूलित कर लिया है:
[user @ host]----[$(pwd)]
$
जहाँ कोष्ठक में सब कुछ हल्का नीला है, और बाकी सब ($ सहित) मेरी ~ / .bashrc फ़ाइल में निम्न जोड़कर काला है।
# Turn the prompt symbol red if the user is root
if [ $(id -u) -eq 0 ];
then # you are root, make the prompt red
PS1="[\e[01;34m\u @ \h\e[00m]----[\e[01;34m$(pwd)\e[00m]\n\e[01;31m#\e[00m "
else
PS1="[\e[01;34m\u @ \h\e[00m]----[\e[01;34m$(pwd)\e[00m]\n$ "
fi
लक्ष्य इसे ऐसा बनाना है कि जब मैं 'सूडो सु' का उपयोग करता हूं तो केवल एक चीज बदल जाती है, वह यह है कि $ $ लाल # में बदल जाती है। मैंने /etc/bash.bashrc और / etc / प्रोफ़ाइल में यह देखने के लिए देखा है कि क्या कोई टिप्पणी करने के लिए सिर्फ एक पंक्ति है, लेकिन डेबियन_क्रोच के बारे में सामान का एक गुच्छा है जो मुझे समझ में नहीं आता है, और मुझे नहीं चाहिए कुछ गड़बड़ करने के लिए। मैं जो चाहता हूं उसे कैसे पूरा कर सकता हूं?
पुनश्च यह वही है जो मैं चाहता हूं कि रूट की तरह दिखना चाहिए
[user @ host]----[$(pwd)]
(red)#
संपादित करें: इस हल को चिह्नित करें, उपरोक्त कोड को ~ / .bashrc में जोड़ते हुए रूट ने मेरा लक्ष्य पूरा किया। इसके अलावा, उपरोक्त कोड में, $ (pwd) केवल होम डायरेक्टरी को प्रदर्शित करता है (मुझे लगता है क्योंकि टर्मिनल के खुलने पर वह वर्किंग डायरेक्टरी है), और कभी भी अपडेट नहीं होता है। \ W के साथ $ (pwd) को प्रतिस्थापित करने से यह ठीक हो जाता है, लेकिन होम डायरेक्टरी को प्रदर्शित करता है ~
, जिससे मैं बचने की कोशिश कर रहा था।
\e[01;31m
, में संलग्न करें \[...\]
। यह मैनुअल में PROMPTING के तहत समझाया गया है। इसके अलावा mywiki.wooledge.org/BashFAQ/053
pwd
प्रॉम्प्ट में काम नहीं करने का कारण यह है कि आपको डॉलर-साइन से बचने की आवश्यकता है, अन्यथा सामग्री को $ PS1 में रखने से पहले$(pwd)
निष्पादित किया जाएगा । आप इसे इसके साथ परीक्षण कर सकते हैं :। PS1="\$(pwd) "