मैं विम के साथ संपादित फ़ाइलों को कैसे बचा सकता हूं?


66

मैं संपादन के बाद परिवर्तन सहेज नहीं सकता

sudo vi /etc/network/interfaces

संपादन से पहले पाठ:

auto lo
iface lo inet ...

के लिए संपादित:

auto eth0
iface eth0 inet dhcp

इसे बचाने के लिए मुझे किस कुंजी संयोजन या अनुक्रम को दबाना चाहिए?


7
यदि आप टर्मिनल आधारित संपादकों में फ़ाइलों को संपादित करने के साथ सहज नहीं हैं viया vim, मैं geditउन्हें खोलने के लिए ग्राफ़िकल आधारित संपादक का उपयोग करने की सलाह दूंगा। बदलें sudo viके साथ gksu gedit
आदित्य

5
या sudo nanoइसकी कमांड लाइन का उपयोग करें लेकिन vi की तुलना में बहुत अधिक सहज।
वॉरेन हिल

जवाबों:


125

आप शायद संपादन / इन्सर्ट मोड में हैं। आपको निम्न अनुक्रम टाइप करने की आवश्यकता है:

  1. Esc, कमांड मोड में एडिट मोड और फॉलबैक छोड़ने के लिए;
  2. :+ w+ q, एक :(बृहदान्त्र) के साथ शुरू करें wऔर फिर w और rite और q uit qको दबाएं (या बस छोड़ने के बिना लिखने के लिए):w
  3. फिर Enterमान्य करने के लिए दबाएँ ।

18

मैं आमतौर पर प्रेस ESCऔर फिर पकड़ Shiftऔर प्रेस zदो बार। जैसे आप वर्ड एडिटर में दो कैपिटल Z अक्षर टाइप करना चाहेंगे :) जो आपके डॉक्यूमेंट को सेव करता है और आपके एडिटर को बंद कर देता है।


4
अरे यार, शिफ्ट और डबल ज़, इसके पीछे क्या डिज़ाइन तर्क था, मुझे आश्चर्य है, "हम जो कम से कम सहज ज्ञान युक्त कमांड बना सकते हैं?", उबंटू कभी-कभी मुझे पागल की तरह पेशाब करता है
एस ..

4
@Sam, मैं सिर्फ यह बताना चाहता था कि vi का ubuntu के साथ कुछ लेना-देना नहीं है। उबंटू को पहली बार 2004 में रिलीज़ किया गया था, जबकि vi को बिल जॉय ने 1976 के आसपास बनाया था, जो कि एड से प्रेरित था (1971 में वापस डेटिंग)। इसका मतलब यह है कि vi में शॉर्टकट लगभग किसी भी अन्य में इस्तेमाल किया जाता है, जो आज भी आमतौर पर उपयोग की जाने वाली उपयोगिता है। एक तरह के संयोग में, इमैक का पहला संस्करण, जिसमें पूरी तरह से अलग-अलग अजीब शॉर्टकट हैं, को भी 1976 में जारी किया गया था। मानकीकरण के प्रयास बहुत बाद में आए।
2

वाह @ जानकारी के लिए धन्यवाद @ प्रियलोनी, मेरे अंक अभी भी वैसे ही हैं, इसलिए उम्मीद है कि मानकीकरण प्रयास आगे बढ़ते रहेंगे .. :)
एस ..

@Sam, vi कीबाइंडिंग वास्तव में आपके विचार से बहुत अधिक मानक हैं; वे वस्तुतः सर्वव्यापी हैं। Vi कीबाइंडिंग का अनुकरण करने के लिए व्यावहारिक रूप से कोई भी कार्यक्रम बनाया जा सकता है। यहां तक ​​कि डिफ़ॉल्ट जीमेल कीबाइंडिंग स्पष्ट रूप से (एक विम उपयोगकर्ता के लिए) वी कीबाइंडिंग के आधार पर होती हैं।
वाइल्डकार्ड

एस्क कुंजी के बारे में क्या काम नहीं करता है? मोड डालें, बस रोक दी गई।
रचनाकार

3

जाँच करें कि क्या आपके पास फ़ाइल को संपादित करने के लिए प्रशासनिक (रूट) विशेषाधिकार हैं। इस कमांड का उपयोग करें

whoami

यदि परिणाम "रूट" नहीं है, तो आप फ़ाइल को संपादित करने वाले नहीं हैं।

रूट यूजर के रूप में लॉगिन करने के लिए, नीचे दिए गए कमांड का उपयोग करें

sudo su

या

su

फ़ाइल संपादित करें,

vi /etc/network/interfeces

परिवर्तनों के बाद, फ़ाइल का उपयोग करके सहेजें

  1. Escमोड बदलने के लिए दबाएं
  2. :x फ़ाइल को सहेजने और छोड़ने के लिए

बस इतना ही


0

इस सवाल का जवाब बहुत समय पहले दिया गया था, लेकिन अगर यह फिर से सर्च इंजन में आता है, तो यह लिंक एक अच्छा विम चेसशीट है जिसे आप बुकमार्क करना चाहते हैं यदि आप विम का उपयोग करते हैं।

वैसे, आप :wqफ़ाइल को सहेजने और बाहर निकलने के लिए उपयोग कर सकते हैं (आपको पहले डालने या मोड को बदलने के लिए esc कुंजी दबाना चाहिए और फिर कमांड्स को दबाना होगा) और :q!बिना सहेजे बाहर निकलने के लिए उपयोग करें।

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