2012-06-06 5 views
15

कभी-कभी जब मैं एक फ़ाइल को संपादित करता हूं जिसके लिए रूट अनुमति की आवश्यकता होती है (उदा। फाइलें/आदि के अंतर्गत फाइलें), लेकिन मैं सूडो के रूप में रन विम भूल जाता हूं।क्या मुझे विम छोड़ने के बिना रूट अनुमति मिल सकती है?

संपादन समाप्त होने के बाद, और :wq टाइप करने और छोड़ने के लिए टाइप करें, मुझे लगता है कि मैं !wq का उपयोग भी नहीं कर सकता, क्योंकि फ़ाइल केवल पढ़ने योग्य है।

अगर मैं फ़ाइल छोड़ देता हूं और फिर से संपादित करता हूं, तो मेरा पूरा काम खो जाएगा, लेकिन यदि नहीं, तो मैं अपना संपादन सहेज नहीं सकता। तो, मैं विम छोड़ने के बिना लिखने के लिए रूट अनुमति कैसे प्राप्त कर सकता हूं?

+0

मुझे नहीं लगता कि आप कर सकते हैं, बस इसमें जो कुछ भी है, उसे कॉपी करें, विम बंद करें, सूडो और पेस्ट के साथ चलाएं। संपादित करें: या darryn.ten के रूप में करते हैं उत्तर दिया। –

+2

आप उत्तर को अभी सही के रूप में चिह्नित कर सकते हैं :) –

+0

@ darryn.ten कोई 'सही' उत्तर नहीं हैं। बस 'सहायक' और/या 'स्वीकार किए गए' उत्तरों :) – sehe

उत्तर

23

बाध्य करने के लिए एक निम्न आदेश

:w !sudo tee % 

लिए उन्हें सहेज यह आपके पासवर्ड के लिए संकेत देगा।

+1

मुझे इसकी आवश्यकता होने पर कभी याद नहीं है:/ –

+0

मैंने इसे खुद याद रखने के लिए मजबूर किया क्योंकि मैं इसे नियमित रूप से उपयोग करता हूं –

+6

@ माइकल: याद रखने की आवश्यकता से छुटकारा पाने के लिए उपयोग किया जाने वाला एक आम कामकाज कस्टम कॉम्प्लेक्स बनाना एक जटिल कमांड है: 'कमांड! डब्ल्यू डब्ल्यू! सुडो टी%>/dev/null'। –

3

tee के साथ उल्लिखित चाल अच्छा है; यदि आपको अक्सर इसकी आवश्यकता है तो मैं SudoEdit plugin की अनुशंसा करता हूं, जो :SudoWrite कमांड (और यहां तक ​​कि sudo: प्रोटोकॉल हैंडलर) प्रदान करता है।

संबंधित मुद्दे