আমি grepএই জন্য উপেক্ষা করব । এটি নিয়মিত প্রকাশের জন্য ভাল তবে মনে হচ্ছে আপনার এখানে সত্যই দরকার নেই। commদুটি ফাইলের তুলনা করতে এবং আপনাকে ছেদ দেখাতে পারে। আপনার সঠিক উদাহরণ ব্যবহার করে:
$ comm -12 list.txt output.txt
a.1
b.1
etc
এটি যে কোনও গ্রেপের চেয়ে দ্রুততর তবে এটি বাছাই করা ফাইলগুলির উপর (খুব বেশি) নির্ভর করে। যদি তা না হয় তবে আপনি এগুলি প্রাক-বাছাই করতে পারেন তবে এটি আউটপুটকে পরিবর্তন করবে যাতে এটি খুব বাছাইও হয়।
comm -12 <(sort list.txt) <(sort output.txt)
অন্যথা, এই উত্তর থেকে iiSeymour আপনার সাথে এটা করতে দেওয়া হবে grep। পতাকাগুলি একটি ইনপুট ফাইলের জন্য জিজ্ঞাসা করে এবং একটি স্থির-স্ট্রিং, পূর্ণ-শব্দ অনুসন্ধানে বাধ্য করে। এটি অর্ডের উপর নির্ভর করবে না তবে অর্ডের উপর নির্ভর করবে output.txt। আপনি যদি তালিকাটি.এসটিএসটিএসের ক্রমে ফাইলগুলি চান তবে তাদের বিপরীত করুন।
$ grep -wFf list.txt output.txt
a.1
b.1
etc
যদি আপনার list.txtহয় সত্যিই বড়, আপনি একটু বেশি iteratively এই এই একটি সাজসরঁজাম এবং তাদের পৃথকভাবে grep প্রতিটি লাইন পাস করতে হবে পারে। এটি প্রসেসিংয়ের সময়কে ব্যাপকভাবে বৃদ্ধি করবে। উপরের দিকে আপনি output.txtএকবার পড়তে চাইছেন , তবে আপনি প্রতিটি লিস্ট.এসটি লাইনের জন্য এটি পড়তে এবং প্রক্রিয়া করতে চান। এটি ভয়ঙ্কর ... তবে এটি আপনার একমাত্র পছন্দ হতে পারে। উল্টো দিকে, এটি তখন list.txtআদেশ অনুসারে জিনিসগুলি বাছাই করে ।
$ while read line; do grep -wF "$line" output.txt; done < list.txt
a.1
b.1
etc