मैं बैश में विंडो शीर्षक कैसे सेट कर सकता हूं? मुझे पता है कि विंडोज बैच में यह TITLE है।
मैं बैश में विंडो शीर्षक कैसे सेट कर सकता हूं? मुझे पता है कि विंडोज बैच में यह TITLE है।
जवाबों:
यहाँ यह करने के लिए एक अच्छा कार्य है:
# Allow the user to set the title.
function title {
PROMPT_COMMAND="echo -ne \"\033]0;$1 (on $HOSTNAME)\007\""
}
अपने ~ / .bashrc में रखें, फिर शीर्षक सेट करने के लिए "जो भी हो" टाइप करें। यदि आप होस्टनाम से छुटकारा चाहते हैं, तो "($ HOSTNAME पर)" हटा दें।
संपादित करें: कोशिश करने से पहले . ~/.bashrc(उर्फ source ~/.bashrc) को निश्चित रूप से सुनिश्चित करें ।
title Hey!करता हूं, तो यह काम नहीं करता है। क्या करें?
यदि आप "मिनिटेट" (2011 के अंत से साइगविन का डिफ़ॉल्ट टर्मिनल) का उपयोग कर रहे हैं, तो निम्न जोड़ें .bashrc:
function title {
export WINDOWTITLE=$1
}
export PS1='\[\e]0;$WINDOWTITLE:\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]~\w\[\e[0m\]\n\$'
और अपने टर्मिनल को फिर से खोलें और "शीर्षक ThisIsMyTitle" टाइप करें
हमें अधिक जानकारी की आवश्यकता है: उत्तर इस बात पर निर्भर करेगा कि आप किस टर्मिनल का उपयोग कर रहे हैं, किस शेल का नहीं। क्या यह एक एक्सटर्म में है? एक rxvt? खिड़कियों पर एक साइबर खिड़की? आदि।
(डैनबेन का जवाब xterms के लिए काम करता है, और शायद rxvt टर्मिनलों के लिए)
मैं इस VT100 भागने अनुक्रम में परिभाषित किया गया है .bashrc।
PS1_SET_TITLE='\[\e]0;\u@\h:\w\a\]'
PS1="${PS1_SET_TITLE}" my other prompt components
export PS1
मेरे होम डायरेक्टरी के लिए यह प्रदर्शित करता है alex@host:~, जब मैं डायरेक्टरी बदलता हूं, तो वे विंडो टाइटल में अपडेट किए जाते हैं।
CYGWIN और PuTTY टर्मिनल सत्र के साथ काम करता है। मैं आमतौर पर एक्स नहीं चलाता हूं, लेकिन जब मैंने एक्सटर्म के साथ ठीक काम किया।
PROMPTINGपीएस आदेशों के लिए उपलब्ध स्विच पर बैश मैन पेज का अनुभाग पढ़ें , जैसे \u \h \w।
यहाँ बैश में विंडो टाइटल सेट करने के लिए कुछ कोड दिए गए हैं - एक बेहतर संस्करण, जो
पिछले संकेत स्ट्रिंग को नहीं हटाता है (और इसमें परिवर्तन अस्थायी हैं), दूसरे उत्तर का (नीचे उद्धृत):
function title {
export WTITLE=$1
}
PS1_old="$(echo $PS1 | sed -En 's/(.+)\\e](.+)/\1\\\\e]\2/g; s/(.+ )(.+)/\1\\n\2/p')";
_PS1='\[\e]0;$WTITLE: \w\a\]';_PS1+="$PS1_old ";export PS1=$_PS1;
# A command to use in bash (shell) scripts, replaces
# the above function that is for a "~/.bashrc" file:
export WTITLE="[for example \u@\h, insert title here]"
यदि आप "मिनिटेट" (2011 के अंत से साइगविन का डिफ़ॉल्ट टर्मिनल) का उपयोग कर रहे हैं,
तो निम्न जोड़ें.bashrc:function title { export WINDOWTITLE=$1 } export PS1='\[\e]0;$WINDOWTITLE:\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]~\w\[\e[0m\]\n\$'और अपने टर्मिनल को फिर से खोलें और "शीर्षक ThisIsMyTitle" टाइप करें
- इस जवाब से बोली ।