मेरे पास कुछ बड़ी पाठ फ़ाइलें हैं और फ़ाइल में UNIQS.txtमेरे पास किसी grepअन्य फ़ाइल से स्ट्रिंग की सूची है । मेरे द्वारा उपयोग किया जाने वाला कोड है
grep -f UNIQS.txt EEP_VSL.uniqs.sam > UNIQ_templates.sam
जो कुछ भी नहीं करता है - उत्पन्न फ़ाइल खाली है। लेकिन जब मैं करता हूं
grep -F -f UNIQS.txt EEP_VSL.uniqs.sam > UNIQ_templates.sam
यह सही ढंग से काम करता है। यह मुझे भ्रमित करता है क्योंकि मुझे नहीं लगता था कि उद्धरण और स्लैश के बिना रीगेक्सप पैटर्न grepमें प्रविष्टियों की व्याख्या की जाएगी UNIQS.txtऔर इसलिए फाइल में होने पर (जो वहां नहीं हैं)। क्या यह सामान्य रूप से ऐसा है कि यदि आप किसी फ़ाइल से पैटर्न प्राप्त कर रहे हैं तो यह स्वचालित रूप से सोचेगा कि वे regexp पैटर्न हैं?
संपादित करें: में UNIQS.txtफ़ाइल, वहाँ फार्म के न्यू लाइन अलग तार कर रहे हैं
HWI-ST365:215:D0GH0ACXX:2:1101:10034:186783
(टेम्प्लेट नाम कहा जाता है) और फ़ाइल EEP_VSL...टैब अलग-अलग कॉलम होते हैं, लगभग 14 कॉलम और पहला कॉलम टेम्पलेट नाम होता है, इसलिए मूल रूप से मैं फ़ाइल में प्रत्येक टेम्पलेट के अनुरूप लाइन निकालना चाहता हूं।