मैंने कुछ समय तक उबंटू में देखा है जो मेरे लिए निराशाजनक रहा है जब मैं कमांड लाइन पर एक कमांड टाइप कर रहा हूं जो टर्मिनल चौड़ाई की तुलना में लंबी (चौड़ी) हो जाती है, एक नई लाइन से लपेटने के बजाय, यह वापस चली जाती है कॉलम 1 उसी लाइन पर और मेरी कमांड लाइन की शुरुआत को ओवर राइट करना शुरू करता है। (यह वास्तव में वास्तविक कमांड को अधिलेखित नहीं करता है, लेकिन नेत्रहीन, यह उस पाठ को अधिलेखित कर रहा है जो प्रदर्शित किया गया था)।
इसे देखे बिना समझाना कठिन है, लेकिन मान लीजिए कि मेरा टर्मिनल 20 वर्णों का चौड़ा था (खदान 120 वर्णों की तरह है - लेकिन उदाहरण के लिए) और मैं अंग्रेजी वर्णमाला को प्रतिध्वनित करना चाहता हूं। मैं क्या टाइप कर रहा हूँ:
echo abcdefghijklmnopqrstuvwxyz
लेकिन कुंजी मारने से पहले मेरा टर्मिनल कैसा दिखता है:
pqrstuvwxyzghijklmno
जब मैं एंट्री मारता हूं तो यह इको हो जाता है
abcdefghijklmnopqrstuvwxyz
इसलिए मुझे पता है कि आज्ञा ठीक से मिली थी। यह सिर्फ "ओ" के बाद मेरी टाइपिंग को लपेटता है और उसी लाइन पर शुरू होता है।
मैं क्या होने की उम्मीद करूंगा, अगर मैंने इस आदेश को एक टर्मिनल पर टाइप किया जो केवल 20 वर्णों का था, तो यह होगा:
echo abcdefghijklmno
pqrstuvwxyz
पृष्ठभूमि: मैं अपने शेल के रूप में बैश का उपयोग कर रहा हूं, और मेरे पास मेरी ~ / .bashrc में यह पंक्ति है।
set -o vi
VI आदेशों के साथ कमांड लाइन नेविगेट करने में सक्षम होने के लिए। मैं वर्तमान में Ubuntu 10.10 सर्वर का उपयोग कर रहा हूं, और पोटीन के साथ सर्वर से जुड़ रहा हूं।
मेरे द्वारा काम किए गए किसी भी अन्य वातावरण में, यदि मैं एक लंबी कमांड लाइन टाइप करता हूं, तो यह उस लाइन के नीचे एक नई लाइन जोड़ देगा जो मैं तब काम कर रहा हूं जब मेरी कमांड टर्मिनल चौड़ाई से अधिक लंबी हो जाती है और जब मैं टाइप करता रहता हूं तो मैं अपनी कमांड देख सकता हूं 2 अलग लाइन। लेकिन जब तक मैं उबंटू का उपयोग करके याद रख सकता हूं, मेरे लंबे कमांड केवल 1 लाइन पर कब्जा कर लेते हैं।
यह तब भी होता है जब मैं इतिहास में पिछली कमांड पर वापस जा रहा हूं (मैंने Esc को मारा, फिर 'K' को पिछली कमांड पर वापस जाने के लिए) - जब मुझे पिछली कमांड मिलती है जो टर्मिनल चौड़ाई से अधिक लंबी थी, तो कमांड लाइन मिलती है। मैं उलझ गया और मैं यह नहीं बता सकता कि मैं कमान में कहाँ हूँ।
पूरे लॉन्ग कमांड को देखने के लिए एकमात्र कार्य-आस-पास मुझे "Esc-V" हिट करना है, जो एक VI संपादक में वर्तमान कमांड को खोलता है।
मुझे नहीं लगता कि मेरे पास .bashrc फ़ाइल में कुछ भी अजीब है। मैंने "सेट -o vi" लाइन पर टिप्पणी की, और मुझे अभी भी समस्या थी।
मैंने पुट्टी की एक नई प्रति डाउनलोड की और कॉन्फ़िगरेशन में कोई बदलाव नहीं किया - मैंने कनेक्ट करने के लिए अपने होस्ट नाम में सिर्फ टाइप किया, और मुझे अभी भी समस्या है, इसलिए मुझे नहीं लगता कि यह पोटीन के साथ कुछ भी है (जब तक मुझे ज़रूरत नहीं है कुछ विन्यास परिवर्तन करें)
क्या किसी और को यह समस्या थी, और क्या कोई सोच सकता है कि इसे कैसे ठीक किया जाए?
संपादित करें
यह मेरी .bashrc फ़ाइल थी। मैंने मशीन से मशीन में एक ही प्रोफ़ाइल की प्रतिलिपि बनाई है, और मैंने अपने $ PS1 में विशेष वर्णों का उपयोग किया है जो किसी तरह इसे बंद कर रहे हैं। मैं अब अपने $ PS1 के लिए मानक बैश चर के साथ चिपका रहा हूँ।
.Bashrc पर टिप के लिए @ forndrük का धन्यवाद!
... अंत संपादित करें ...
/etc/skel/.bashrc
। ध्यान रखें कि परिवर्तनों को प्रभावी करने के लिए आपको फिर से कनेक्ट करना होगा, और अपने स्वयं के .bashrc का बैकअप रखना सुनिश्चित करें।