मैं एक विशिष्ट शब्द का उपयोग करके फाइलें खोजने की कोशिश कर रहा हूं grep। निर्देशिका में कई फाइलें हैं (> 500)
आज्ञा मैं चला
$ grep 'delete' *
उत्पादन
validate_data_stage1:0
validate_data_stage2:0
validate_data_stage3:0
validate_data_stage4:0
validate_data_stage5:0
validate_input_stage1:0
validate_input_stage2:0
validate_input_stage3:0
validate_input_stage4:0
.... and hundred of such lines
ये वो फाइलें हैं जिनमें दिए गए मैच नहीं हैं। मैं उन पंक्तियों को प्रदर्शित करने से लेकर स्टडआउट तक दबाना चाहता हूं। मुझे -qस्विच का पता है , लेकिन यह संपूर्ण आउटपुट को दबा देगा, जो मुझे नहीं चाहिए।
मैं उसको कैसे करू?
grep 'delete' * -R, लेकिन मुझे नहीं लगता कि -Rयह किसी भी समस्या का कारण है। और हाँ, यह आम तौर पर गैर-मिलान वाले लोगों को नहीं छापता है, लेकिन यह निश्चित नहीं है कि यहाँ क्या मामला है ...
grep -- 'delete' *(जोड़ा --) और यह उम्मीद के मुताबिक काम किया। हटाने से --उपरोक्त प्रदर्शन में अग्रणी है।
-ci। मुद्दे को हल करने के लिए धन्यवाद। आप इस परिदृश्य को उत्तर के रूप में पोस्ट कर सकते हैं।
grepगैर-मिलान वाली फ़ाइलों के फ़ाइल नामों का प्रिंट आउट नहीं लेना चाहिए। वास्तव में, ऐसा लगता है कि मिलान करनेgrepवाली सामग्री के साथ एक पंक्ति मानता है0। क्या आप उस सटीक खोज पैटर्न को पोस्ट कर सकते हैं जिसका आप उपयोग कर रहे हैं?