में खोज कमांड का उपयोग करते समय "निर्देशिका है" परिणाम छोड़ दें मैं निर्देशिका संरचना के भीतर एक स्ट्रिंग को खोजने के लिए निम्न आदेश का उपयोग करता हूं।यूनिक्स
find . -exec grep -l samplestring {} \;
लेकिन जब मैं एक बड़ी निर्देशिका संरचना के भीतर आदेश चला, वहाँ
grep: ./xxxx/xxxxx_yy/eee: Is a directory
grep: ./xxxx/xxxxx_yy/eee/local: Is a directory
grep: ./xxxx/xxxxx_yy/eee/lib: Is a directory
की एक लंबी सूची हो जाएगा मैं उन ऊपर दिए गए परिणामों को छोड़ करना चाहते हैं। और बस प्रदर्शित स्ट्रिंग के साथ फ़ाइल का नाम प्राप्त करें। क्या कोई मदद कर सकता है?
'find -type f' और' grep -r' या 'grep -R' अच्छे विकल्प हैं ... केवल उत्तर को पूरा करने के लिए, शायद यह जोड़ें कि '-d skip' विशेष रूप से' निर्देशिका है 'का ख्याल रखता है मुद्दा ... कम से कम मामलों में उपयोगी है जैसे पुनरावर्ती खोज के लिए खोल विकल्प का उपयोग करना, पूर्व के लिए: 'grep -d skip -l' samplestring '**/@ (*। txt | * .log) ' – Sundeep
@ सुंदिप अच्छा ! मुझे '-'' झंडा के बारे में पता नहीं था। – fedorqui