SSH कनेक्शन को बंद करने के बाद Mac OS X टर्मिनल शीर्षक को पुनर्स्थापित करें [डुप्लिकेट]


17

संभव डुप्लिकेट:
जब मैं ssh से वापस आ रहा हूं तो मैं OS X को टर्मिनल शीर्षक को मूल शीर्षक पर वापस कैसे सेट करूं?

हर बार जब आप मैक ओएस एक्स टर्मिनल में एसएसएच कनेक्शन से लॉगआउट करते हैं तो आप विंडो शीर्षक में पिछली लॉगिन जानकारी के साथ समाप्त हो जाते हैं।

अधिकांश समाधान जो मैंने वेब पर खोजे हैं, उनमें कॉन एस्केप सीक्वेंस के आसपास खेलना शामिल है, जैसे यह प्रश्न या यह संबंधित ब्लॉग पोस्ट

यह एक SSH मुद्दा प्रतीत होता है, टर्मिनल चीज़ नहीं, इसलिए मैं सोच रहा था कि क्या ऐसा करने का एक आसान तरीका है (शायद SSH क्लाइंट कॉन्फ़िगरेशन को संपादित करना?)

जवाबों:


24

यह एक SSH मुद्दा नहीं है। मुद्दा यह है कि दूरस्थ होस्ट पर शेल को टर्मिनल विंडो शीर्षक सेट करने के लिए एस्केप सीक्वेंस भेजने के लिए कॉन्फ़िगर किया गया है। यह एक काफी सामान्य सेटअप है। में वर्णित समाधान ब्लॉग पोस्ट आप सही हैं से जुड़े

सबसे सरल और सबसे सीधा समाधान यह है कि लॉग आउट करते समय खिड़की के शीर्षक को रीसेट करने के लिए उसी रिमोट शेल को कॉन्फ़िगर करना। उदाहरण के लिए, यदि रिमोट शेल बैश है, तो इसे ~ / .bash_logout में डालें:

printf '\e]0;\a'

वैकल्पिक रूप से, यदि आप अपने स्थानीय शेल को विंडो टाइटल को किसी उपयोगी चीज के साथ अपडेट करना चाहते हैं, तो भी ऐसा करें। जब ssh कनेक्शन समाप्त हो जाता है, तो स्थानीय शेल बासी मान को छोड़ने के बजाय विंडो शीर्षक को कुछ और सेट करेगा। जैसे इसे ~ / .bashrc में डालें:

PS1='\[\e]1;\s\$ \W\a\e]2;\u@\h\a\]'"$PS1"

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

ध्यान दें कि यदि आपके पास पहले से ही एक ~ / .bash_profile (या ~ / .profile) नहीं है, तो एक बनाएं और इसे चलाएं ~ / .bashrc ताकि ~ / .bashrc लॉगिन और नॉन-लॉगिन शेल पर लागू हो:

if [ -f $HOME/.bashrc ]; then
    . $HOME/.bashrc
fi
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.