मेरी समस्या यह है कि बैश शेल मेरे द्वारा टाइप किए गए पात्रों को दिखाना बंद कर देता है। यह हालांकि आदेशों को पढ़ता है।
मैं काफी बार इस समस्या को लेकर आया हूं और मुझे समझ नहीं आया कि इसके क्या कारण हैं। मुझे पता है कि इसे कैसे हल करना है, लेकिन मुझे वास्तव में यह पसंद नहीं है जब मैं समस्याओं से बाहर निकलने का अपना तरीका "वूडूइंग" कर रहा हूं।
मैं इस समस्या के दो तरीकों का वर्णन करूँगा:
मैं एक निश्चित प्रक्रिया चला रहा हूं, http://pythonpaste.org/script/ और कभी-कभी जब मैं उसे रोकता हूं या नियंत्रण टूट जाता है तो उसे वापस शेल में दिया जाता है। जब मैं जाता हूं और शेल में कमांड टाइप करता हूं, तो जो अक्षर मैं टाइप करता हूं वह दिखाई नहीं देता है। जब मैं प्रेस करता हूं तो कमांड सबमिट किए जाते हैं । उदाहरण के लिए:
- मैं "ls" टाइप करता हूँ
- मैं केवल एक खाली संकेत देखता हूं और इससे ज्यादा कुछ नहीं
- मुझे एंटर दबाने और मैं फ़ाइलों की एक सूची दी गई कर रहा हूँ, दूसरे शब्दों में: आदेश है निष्पादित
- जब मैं "रीसेट" कमांड देता हूं तो शेल फिर से सामान्य रूप से काम करना शुरू कर देता है
दूसरा तरीका ऐसा होता है जब मैं इस तरह से एक कमांड देता हूं:
$ grep foo * -l | xargs vim
मैं grep का उपयोग उन फ़ाइलों को खोजने के लिए करता हूं जिनमें एक निश्चित पैटर्न होता है और फिर मैं उन सभी फ़ाइलों को खोलना चाहता हूं जो grep से उत्पन्न होती हैं। यह एक आकर्षण की तरह काम करता है (हालांकि मैं जितनी जल्दी आशा करता था उतना तेज़ नहीं)। लेकिन जब मैं विम से बाहर निकलता हूं, तो मेरा शेल मेरे द्वारा टाइप किए गए पात्रों को दिखाना बंद कर देता है। एक रीसेट कमांड समस्या का समाधान करता है।
मेरा अनुमान है कि दोनों समस्याओं का एक अंतर्निहित कारण है, लेकिन मैं इस बात पर अडिग हूं कि यह कारण क्या है या क्या है।
इस समस्या की खोज करना स्वयं समस्याग्रस्त है क्योंकि विवरण अस्पष्ट है और इसके लिए कोई कठिन खोज-शब्द नहीं है।
संपादित करें
दे रहा है
stty --all
जॉन एस। ग्रुबर के अनुरोध के अनुसार कमांड ने निम्न आउटपुट (पठनीयता के लिए संपादित व्हाट्सएप) दिया
speed 0 baud;
rows 53;
columns 186;
line = 0;
intr = <undef>;
quit = <undef>;
erase = <undef>;
kill = <undef>;
eof = <undef>;
eol = <undef>;
eol2 = <undef>;
swtch = <undef>;
start = <undef>;
stop = <undef>;
susp = <undef>;
rprnt = <undef>;
werase = <undef>;
lnext = <undef>;
flush = <undef>;
min = 0;
time = 0;
-parenb
-parodd cs8
-hupcl
-cstopb cread
-clocal
-crtscts
-ignbrk
-brkint
-ignpar
-parmrk
-inpck
-istrip
-inlcr
-igncr
-icrnl
-ixon
-ixoff
-iuclc
-ixany
-imaxbel
-iutf8
-opost
-olcuc
-ocrnl
-onlcr
-onocr
-onlret
-ofill
-ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig
-icanon
-iexten
-echo
-echoe
-echok
-echonl
-noflsh
-xcase
-tostop
-echoprt
-echoctl
-echoke
stty --all
अपने प्रश्न का आउटपुट जोड़ा है । अग्रिम में धन्यवाद!
stty --all
और अपने प्रश्न में परिणाम डालें । इको एक टटी विशेषता है जिसे बंद किया जा रहा है। विम इसे चलाने के दौरान करेगा, और यह टर्मिनल को कच्चे मोड में भी डाल देगा। जब यह समाप्त हो जाता है तो इसे टर्मिनल सेटिंग्स को स्वयं रीसेट करना चाहिए। जब विम चल रहा है तो आपi
कमांड को गूंजना नहीं चाहते, जो एडिटर को इन्सर्ट मोड में डालता है, उदाहरण के लिए। ये सेटिंग्स ट्टी डिवाइस को बताती हैं कि यह कैसे टाइप करना चाहिए जो आप टाइप करते हैं। जबकि विम चल रहा है, यह प्रतिध्वनित होता है कि क्या प्रतिध्वनित होना चाहिए, इत्यादि