কম্পিউটার টিউটোরিয়াল

লিনাক্সে find কমান্ড দিয়ে ফাইল খুঁজে বের করার পূর্ণাঙ্গ গাইড

find কমান্ডের পরিচিতি

লিনাক্সে ফাইল খুঁজে বের করার জন্য find কমান্ড ব্যবহার করা হয়। এটি ফাইল সিস্টেমে রিকার্সিভলি সার্চ করে।

বেসিক সিনট্যাক্স

find [path] [expression] [filename]
  • path: কোথা থেকে সার্চ শুরু করবে (ডিফল্ট বর্তমান ডিরেক্টরি)।
  • expression: কী ধরনের ফাইল খুঁজবে (নাম, আকার, সময়, পারমিশন ইত্যাদি)।
  • filename: ফাইলের নাম বা প্যাটার্ন।

সার্চ লোকেশন শর্টকাট (মেটাক্যারেক্টার)

  • . (পিরিয়ড): বর্তমান ডিরেক্টরি এবং সাব-ডিরেক্টরিগুলো।
  • / (ফরোয়ার্ড স্ল্যাশ): পুরো ফাইল সিস্টেম।
  • ~ (টিল্ডা): বর্তমান ইউজারের হোম ডিরেক্টরি।

নোট: পুরো ফাইল সিস্টেম সার্চ করলে পারমিশন এরর দিতে পারে। sudo দিয়ে রান করলে সমাধান হবে।

সাধারণ এক্সপ্রেশন (Expression) গুলো

সবচেয়ে phổ biến: -name (ফাইল/ফোল্ডার নাম দিয়ে সার্চ)। অন্যান্য গুরুত্বপূর্ণ এক্সপ্রেশন:

  • -iname pattern: কেস-ইনসেনসিটিভ নাম সার্চ।
  • -type f/d/l: ফাইল (f), ডিরেক্টরি (d), সিমবোলিক লিংক (l) খুঁজে।
  • -size n: ফাইল আকার অনুযায়ী (c=বাইট, k=কিলোবাইট, M=মেগাবাইট, G=গিগাবাইট)।
  • -mtime n: n দিন আগে মডিফাইড ফাইল।
  • -atime n: n দিন আগে এক্সেস করা ফাইল।
  • -empty: খালি ফাইল/ডিরেক্টরি।
  • -executable / -readable / -writable: পারমিশন অনুযায়ী।
  • -user name / -group name: মালিক/গ্রুপ অনুযায়ী।
  • -perm mode: পারমিশন মোড অনুযায়ী।
  • -regex pattern: রেগুলার এক্সপ্রেশন দিয়ে সার্চ।

ব্যবহারিক উদাহরণ

নির্দিষ্ট দিনের আগে এক্সেস করা ফাইল খুঁজুন

find ~ -atime +100

হোম ডিরেক্টরিতে ১০০ দিনের বেশি আগে এক্সেস করা সব ফাইল খুঁজে দেবে।

খালি ফাইল ও ফোল্ডার খুঁজুন

find / -empty

সব এক্সিকিউটেবল ফাইল খুঁজুন

find / -executable -type f

সব পঠনযোগ্য (readable) ফাইল খুঁজুন

find / -readable -type f

প্যাটার্ন (Wildcard) ব্যবহার করে সার্চ

এক্সটেনশন বা অংশিক নাম দিয়ে সার্চ করতে প্যাটার্ন ব্যবহার করুন। উদাহরণ: সব MP3 ফাইল খুঁজতে:

find / -name "*.mp3"

টিপ: শেল অনুযায়ী অ্যাসটারিস্ক (*) এস্কেপ করতে হতে পারে। কাজ না করলে কোটেশন ব্যবহার করুন: find / -name '*.mp3'।

find আউটপুট ফাইলে সংরক্ষণ করুন

অনেক ফলাফল আসলে টার্মিনালে দেখতে কষ্ট হয়। আউটপুট ফাইলে রিডাইরেক্ট করুন:

find / -name "*.log" > log_files.txt

অথবা tail দিয়ে শেষের কিছু লাইন দেখুন: find / -name "*.log" | tail -20।

find দিয়ে ফাইল খুঁজে সাথে সাথে কমান্ড এক্সিকিউট করুন (-exec)

ফাইল খুঁজে পাওয়ার সাথে সাথে ওপেন বা এডিট করতে -exec ব্যবহার করুন। উদাহরণস্বরূপ, filename নামক ফাইল খুঁজে nano এডিটরে খুলতে:

find / -name "filename" -exec nano {} \;

এখানে {} হলো খুঁজে পাওয়া ফাইলের প্লেসহোল্ডার এবং \; কমান্ডের সমাপ্তি নির্দেশ করে। nano যেকোনো কমান্ড হতে পারে (যেমন rm, cp, chmod ইত্যাদি)।

  1. লিনাক্সে ক্লিপম্যান (Clipman) দিয়ে যেকোনো টেক্সট গুগল সার্চ করা

  2. লিনাক্সে ফাইলে নির্দিষ্ট শব্দ খুঁজে বের করুন

  3. fd ব্যবহার করে লিনাক্স এবং macOS-এ ফাইল দ্রুত খুঁজুন

  4. উইন্ডোজ ১০-এ হারানো ফাইল দ্রুত খুঁজে বের করুন: ধাপে ধাপে গাইড