कमांड लाइन से विम को कैसे बंद करें?


46

मुझे पता है कि यह एक सामान्य लिनक्स सवाल है, लेकिन w / e। इसलिए जब मैं कमांड प्रॉम्प्ट में एक प्रोग्राम दर्ज करता हूं, तो यह फाइल में मौजूद सभी टेक्स्ट को प्रदर्शित करता है और मैं इसे एडिट कर सकता हूं आदि। लेकिन मैं यह पता नहीं लगा सकता कि फाइल को कैसे बंद करें या सेव करें और बिना मर्डर किए ही कमांड प्रॉम्प्ट पर वापस जाएं। प्रक्रिया। किसी भी मदद की सराहना की है।




जवाबों:


71

विम में 3 अलग-अलग मोड हैं:

  • सम्मिलित करें - सामान्य रूप से टाइपिंग और संपादन की अनुमति देता है
  • दृश्य - कॉपी / पेस्ट आदि के चयन के लिए उपयोग किया जाता है
  • सामान्य - कमांड के लिए उपयोग किया जाता है

सामान्य मोड पर वापस आने के लिए, आप हमेशा दबा सकते हैं esc

एक बार जब आप :अपनी कमांड शुरू करने के लिए नॉर्मल मोड प्रेस पर होते हैं (आप देखेंगे कि यह नीचे बाईं ओर दिखाई देगा)। निम्नांकित आदेश विमोचन से संबंधित हैं:

  • :q - कोई बदलाव नहीं किया गया तो छोड़ दिया
  • :q! - किए गए परिवर्तनों को छोड़ें और नष्ट करें
  • :wq - परिवर्तन लिखें (सहेजें) और छोड़ें
  • :x- के समान :wq, केवल फ़ाइल लिखें यदि परिवर्तन किए गए थे, तो छोड़ दें

4
और के :xलिए एक शॉर्टकट है:wq
वार्ड म्यूइअर्ट

2
आप बस "सामान्य" मोड भूल गए। वाह। वास्तव mode()में vim में फ़ंक्शन 18 अलग-अलग मान लौटा सकता है।
बेनोइट

जैसा कि बेनोइट ने कहा है, यह उत्तर "कमांड मोड" शब्द का उपयोग करता है, जिसे संदर्भित करने के लिए विम दस्तावेज़ "सामान्य मोड" कहता है। विम डॉक्स कमांड मोड को वही मानते हैं जो आप :सामान्य मोड में दबाकर दर्ज करते हैं। यदि आप हिट करते हैं esc, तो आप सामान्य मोड पर लौटते हैं। -1 मानक शब्दावली सीखने के लिए लोगों को गुमराह करने के लिए (और परिणामस्वरूप मदद प्रणाली की समझ बनाने में सक्षम हो)।
intuited

6
@intuited कोई व्यक्ति संपादन का सुझाव दे सकता है, जो संभवतः एक लंबे समय तक डाउन वोट की तुलना में अधिक सहायक होने वाला है और अच्छी सलाह जो टिप्पणियों में दफन हो जाती है।
माइकल मार्टिन-स्मूकर

जानकारी के लिए धन्यवाद, इसे VIM में भी कहीं दिखाया जाना चाहिए ताकि कोई भी इसे जान सके ... इसकी इतनी हास्यास्पद है कि इसे इंटरनेट पर खोजा जा सकता है।
श्रीदत्त कोठारी

14

सबसे पहले, escapeकुंजी मारो । 1

फिर बस टाइप करें ZZ(यह एक पंक्ति में दो पूंजी Z है)।
या टाइप करें :x। या तो कोई संपादन बचा लेगा और छोड़ देगा।
आप भी उपयोग कर सकते हैं:wq

वैकल्पिक रूप से, आप टाइप कर सकते हैं :q (उर्फ, " छोड़ो, कृपया ") यह तभी बाहर होगा जब आपने संपादन नहीं किया है।

यदि आपने संपादन किया है, और आप उन्हें छोड़ना चाहते हैं और छोड़ना चाहते हैं, तो :q!(उर्फ " छोड़ो, धिक्कार है !"

1 : यह सुनिश्चित करता है कि आप "कमांड" मोड में हैं। जिसे आप टाइपिंग कमांड के लिए चाहते हैं, जैसे कि बाहर निकलने के लिए आवश्यक।


4

हमारी असुविधा के लिए, कमांड-लाइन कार्यक्रमों से बाहर निकलने के लिए कोई सामान्य तरीका नहीं है, जैसे कि ग्राफिकल कार्यक्रमों के लिए "X" बटन है।

कई कमांड लाइन कार्यक्रमों या तो का उपयोग करने का विषय का पालन करें Q(उदाहरण के लिए manऔर top) या Ctrl+ C(जैसे pingऔर watchबाहर निकलने के लिए), लेकिन यह काफी भिन्न होता है, विशेष रूप से पाठ संपादकों के बीच:

  • विम विशेष रूप से :q!तब के अस्पष्ट संयोजन का उपयोग करता है Enter, आमतौर पर Escअच्छे उपाय के लिए कई प्रेस से पहले ।
  • Emacs , एक और मणि, पसंद Ctrl+ के Xबाद Ctrl+ C

इस तरह के संपादकों अनुभवहीन के लिए जाल हैं। मेरी व्यक्तिगत पसंद और सिफारिश है, जब कमांड-लाइन पर पाठ को संपादित करने के लिए मजबूर किया जाता है, तो इसके बजाय अधिक आत्म-व्याख्यात्मक जो के स्वयं संपादक (जॉय) का उपयोग करें


4
मैं वास्तव nanoमें एक बहुत अधिक सार्वभौमिक आत्म-व्याख्यात्मक सांत्वना पाठ संपादक हूं ।
जॉन्डविदजोन

@jondavidjohn आपका विवाद मूक है। मैं मानता हूं कि नैनो निर्विवाद रूप से अधिक सार्वभौमिक है, और मैं यह दावा नहीं करता हूं कि यह जॉय की तुलना में किसी भी तरह का स्व-व्याख्यात्मक है। जोई के लिए मेरी प्राथमिकता इसके विस्तारित फीचर सेट के कारण है , और अनुभवहीन उपयोगकर्ताओं के लिए मेरी सिफारिश सूक्ष्मता से प्रभावित होती है जैसे कि पुरातन राइटऑट के स्थान पर सहेजें शब्द का उपयोग ।
ændrük

आम तौर पर आप इस प्रक्रिया को स्थगित करने के लिए ^ Z का उपयोग कर सकते हैं। फिर आप इसे मार सकते हैं, इसे अनदेखा कर सकते हैं, इसे पृष्ठभूमि में रख सकते हैं, या इसे वापस ला सकते हैं। (किल% 1 या मार% x, bg, fg)। वैसे भी नौकरी पर नियंत्रण की कुछ एकता है।
बेलाक्वा

3

Jondavidjohn के उत्तर के साथ, यहाँ दो लिंक दिए गए हैं जिनमें विम का उपयोग करने के बारे में अपरिहार्य जानकारी है।

  1. यह एक कीबोर्ड ग्राफ़िक है जो आपको दिखाता है कि यदि आप संपादन मोड, कमांड मोड, या विज़ुअल मोड में हैं, तो यह निर्भर करता है कि प्रत्येक कुंजी क्या करती है:

    http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html

  2. यह सबसे अच्छा विम ट्यूटोरियल है जो मैंने कभी भी काम किया है। यह संवादी और समझने में आसान है, जो आईआरसी / इंस्टेंट-मैसेजिंग प्रारूप के कारण है।

    http://www.vi-improved.org/tutorial.php

अंत में, aendruk जैसे कुछ हैं जो केवल उन्नत कमांड लाइन पाठ संपादकों का उपयोग नहीं करना चाहते हैं। विम विशेष रूप से एक मजबूत सीखने की अवस्था है, और वास्तव में उपयोग करने के लिए कुछ प्रारंभिक प्रयास करता है। लेकिन यह बहुत तेज है, और बहुत शक्तिशाली है। यदि आपके पास मूल डेस्कटॉप उपयोग से परे लिनक्स में रुचि है, तो यह विम या एमएसीएस जैसे एक सभ्य कमांड लाइन टेक्स्ट एडिटर सीखने में समय लगाने के लायक है। यदि आपको कुछ पाठ संपादित करने की आवश्यकता है और इससे आगे की परवाह नहीं है, तो gedit filename.txtइसके बजाय टाइप करने का प्रयास करें । यह विंडोज से नोटपैड की तरह एक परिचित ग्राफिकल प्रोग्राम लॉन्च करेगा।


@djeikyb: मैं सराहना करता हूं कि आप मूल डेस्कटॉप उपयोग और उन्नत कमांड-लाइन टेक्स्ट एडिटिंग के बीच अंतर करते हैं। अन्य लिनक्स वितरणों पर उबंटू की ताकत रोजमर्रा के कंप्यूटर उपयोगकर्ताओं द्वारा लिनक्स डेस्कटॉप को सुलभ बनाने की क्षमता में है, जिनके लिए अब इसका श्रेय तेजी से बढ़ रहा है, जिन्हें यह जानने की कभी जरूरत नहीं है कि वेम जैसे संपादक भी क्या हैं।
ændrük 8

... यह इस विशेष स्वतंत्रता के साथ है कि मैं पारंपरिक लिनक्स कमांड-लाइन विधियों के रूप में उच्चतर काम करने का निर्णय लेता हूं क्योंकि मेरे पास हर रोज कंप्यूटर के उपयोग के लिए धैर्य है। मैं केवल सरल और सुलभ उपकरणों का उपयोग बड़े पैमाने पर करने का प्रयास करता हूं क्योंकि मैं इसका खर्च उठा सकता हूं । यह कहना गलत होगा कि मुझे केवल कमांड-लाइन टेक्स्ट एडिटर पसंद नहीं हैं। इसके विपरीत, मैं VimOutliner प्लगइन के साथ Vim का शौकीन होता हूं, और मैं Vimperator / Pentadactyl प्रोजेक्ट पर इसके प्रभाव के लिए इसका ऋणी हूं।
ændrük 8

... हालाँकि, मैं इन उपकरणों के अपने व्यक्तिगत उपयोग को विशिष्ट कंप्यूटर उपयोग से विचलन के रूप में देखता हूं। मेरा विचार है कि यह उबंटू समुदाय के लिए एक स्वस्थ विकास होगा जो नए लोगों को आसानी से सुझाव दे सकता है कि हर रोज़ उपयोगकर्ताओं के बीच स्टेप लर्निंग कर्व्स के साथ उन्नत उपकरणों का आकस्मिक उपयोग आदर्श है।
ændrük 8

@Letseatlunch, यदि आपका लक्ष्य विम में प्रवीण बनना है, तो हर तरह से मैं आपको इसे आगे बढ़ाने के लिए प्रोत्साहित करता हूं। मेरे कहने का मतलब केवल यह है कि, जबकि, महत्वपूर्ण बात यह है कि उबंटू कई ऐसे उन्नत उपकरण प्रदान करता है, जिनके लिए अन्य ऑपरेटिंग सिस्टमों की पूरी तरह से कमी है, उनका उपयोग करना सीखना उबंटू का उपयोग करने की आवश्यकता कभी नहीं होनी चाहिए ।
ændrük 8

महान स्पष्टीकरण! मैं बेहतर तरीके से इसे दर्शाने के लिए अपने उत्तर को संपादित करूँगा। इसके अलावा, मैंने विशेष रूप से नैनो पर gedit की सिफारिश की क्योंकि gedit उच्च स्तर पर एक परिचित गुई के साथ है, और क्योंकि नैनो हास्यास्पद रूप से मुझे पहले भ्रमित कर रहा था (कैरट प्रतीक का क्या मतलब है? मैं कैसे छोड़ दूं ?? मैं कैसे बचाऊं?) । जो अब मज़ेदार है, विम पर विचार करना मेरी पसंद का संपादक है।
djeikyb

2

अगर Esc :q!काम नहीं करता है,

पहले प्रयास करें Ctrl+ q(स्क्रीन को अनलॉक करने के लिए जिसे Ctrl+ के साथ बंद किया गया था s)

फिर पुनः प्रयास करें Esc :q!(बिना बचत के छोड़ने के लिए) या Esc :wq(बचाने और छोड़ने के लिए)


0

बचाने के बिना बाहर निकलें:

  1. मारो ESC
  2. मारो ZQ

सहेजें के साथ बाहर निकलें:

  1. मारो ESC
  2. मारो ZZ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.