के एक ब्लॉक को हटाने के लिए मैं पाठ का एक ब्लॉक है कि इस तरह दिखता है एसईडी का उपयोग करना:पाठ
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
मैं इस पूरे ब्लॉक को दूर करना चाहते हैं। Sed आदेश क्या है?
के एक ब्लॉक को हटाने के लिए मैं पाठ का एक ब्लॉक है कि इस तरह दिखता है एसईडी का उपयोग करना:पाठ
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
मैं इस पूरे ब्लॉक को दूर करना चाहते हैं। Sed आदेश क्या है?
$ cat text
abc
<!-- BOF CLEAN -->
... a bunch of stuff
<!-- EOF CLEAN -->
def
$ sed '/<!-- BOF CLEAN -->/,/<!-- EOF CLEAN -->/d' text
abc
def
http://www.catonmat.net/blog/sed-one-liners-explained-part-three/
से शुरू और <!-- BOF CLEAN -->
सहित और में समाप्त होने और <!-- EOF CLEAN -->
, उपयोग सहित एसईडी आदेश के बाद सभी पाठ निकालने के लिए:
sed -i '/<!-- BOF CLEAN -->/,/<!-- EOF CLEAN -->/d' file_name;
संदर्भ: Delete text or paragraph between two sections using sed
एसईडी नष्ट कर दिया मेरी फ़ाइल !! मैंने 'sed' /^0.*$/d 's1d13700.c' किया जो कंसोल पर सही परिणाम थूकता है, फिर मैंने' sed '/^0.*$/d' s1d13700.c> s1d13700.c' किया परिणाम के साथ मूल फ़ाइल को ओवरराइट करने के लिए, और फ़ाइल पूरी तरह खाली हो गई! –
@ ज़ोम-बी 'sed ... s1d13700.c> s1d13700.c' में क्या होता है यह है कि शैल पहले से चलने से पहले एक नई खाली फ़ाइल' s1d13700.c' बनाता है, इस प्रकार एक ही नाम के साथ आपकी इनपुट फ़ाइल को ओवरराइट कर रहा है। फ़ाइल को स्थानांतरित करने के लिए 'sed -i.original ... s1d13700.c' का उपयोग करें और मूल फ़ाइल का बैक-अप' s1d13700.c.original' के रूप में बनाएं। –