Grep कमांड, एक निर्दिष्ट शब्द वाली लाइनों को हटाने के लिए


5

मैं निम्नलिखित तरीके से grep का उपयोग करना चाहता हूं:

grep -v "END","EXPDTA" 1bmz_model1.pdb > 1bmz_model.pdb

मैं चाहता हूं कि grep कमांड उन पंक्तियों को हटा दे जिसमें "END" और "EXPDTA" शब्द हों, लेकिन सभी मुझे आउटपुट में मिलते हैं, मूल फ़ाइल की एक प्रति है। जब मैं एक शब्द के साथ खोज करने और हटाने की कोशिश करता हूं, तो कमांड ठीक काम करता है, लेकिन दो शब्दों के साथ नहीं।


यह वास्तव में एक या एक या है?
पॉल 15

जवाबों:


6
egrep -v "END|EXPDTA" infile > outfile

1
बेशक, अगर एक का उपयोग कर रहा है egrep, एक के साथ लाइनों को हटाने की प्रश्नकर्ता की इच्छा को पूरा कर सकते हैं शब्द है कि, से मेल नहीं बल्कि सब कुछ है कि एक बड़ा शब्द के भीतर तीन पात्रों "END" के लिए होता है। B
जेडीबीपी

4
grep भी ऐसा कर सकता है grep -v -e END -e EXPDTA ...
ott--

2
क्या आप अपने कोड के बारे में कुछ स्पष्टीकरण दे सकते हैं?
बजे तमारा विज्समैन

-v, - इनवर्ट-मैच, इन-मैचिंग की समझ को उल्टा कर, गैर-मिलान लाइनों का चयन करने के लिए।
माइकल एस।

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