در حالی که در هر سیستم عامل کار می کند، گاهی اوقات نیاز به استفاده از ابزار برای سرعت یافتن یک فایل خاص وجود دارد. این نیز مربوط به لینوکس است، بنابراین در زیر تمام راه های ممکن برای جستجوی فایل ها در این سیستم مورد توجه قرار خواهد گرفت. هر دو ابزار مدیریت فایل و دستورات مورد استفاده در ترمینال ارائه خواهد شد.

همچنین ببینید:
تغییر نام فایل ها در لینوکس
ایجاد و حذف فایل ها در لینوکس

ترمینال

اگر شما نیاز به مشخص کردن چندین پارامتر جستجو برای یافتن فایل مورد نیاز دارید، سپس دستور find غیر قابل تعویض است. قبل از همه تغییرات آن، از طریق نحو و گزینه ها ارزشمند است. این نحو زیر دارد:

find путь опция

جایی که مسیر دایرکتوری است که در آن جستجو انجام خواهد شد. سه راه اصلی برای تعیین مسیر وجود دارد:

  • / - جستجو از طریق ریشه و دایرکتوری مجاور؛
  • ~ - جستجو از طریق دایرکتوری خانه؛
  • ./ - جستجو در دایرکتوری که در آن کاربر در حال حاضر واقع شده است.

شما همچنین می توانید مسیر را به طور مستقیم در فهرست خود مشخص کنید، که در آن فایل ظاهرا واقع شده است.

یافتن گزینه های زیادی دارد و به همین دلیل است که می توانید با تنظیم متغیرهای ضروری، پیکربندی جستجوی انعطاف پذیر را انجام دهید.

  • -name - جستجو بر اساس نام موردی که دنبال آن هستید انجام دهید
  • -user - برای فایل هایی که به کاربر خاص تعلق دارند نگاه کنید
  • -group - جستجو برای یک گروه خاص از کاربران؛
  • -perm - نمایش فایل ها با حالت دسترسی مشخص شده
  • -size n - جستجو، بر اساس اندازه شی؛
  • -mtime + n -n - جستجو برای فایل هایی که بیشتر ( + n ) یا کمتر ( -n ) روز پیش تغییر کرده بودند؛
  • -type - جستجو برای فایل های یک نوع خاص

انواع بسیاری از عناصر مورد نیاز نیز وجود دارد. در اینجا یک لیست از آنها وجود دارد:

  • ب - بلوک؛
  • f - طبیعی؛
  • پ لوله نامیده می شود
  • د - دایرکتوری؛
  • ل لینک است
  • S - سوکت؛
  • c - شخصیت

پس از تجزیه و تحلیل دقیق نحو و گزینه های فرمان find، می توانید مستقیما به نمونه های تصویری بروید. به دلیل فراوانی گزینه هایی برای استفاده از فرمان، نمونه ها برای همه متغیرها، اما فقط برای آنهایی که بیشترین استفاده را دارند، داده می شوند.

همچنین ببینید: دستورات محبوب در ترمینال لینوکس

روش 1: جستجو بر اساس نام (گزینه-نام)

اغلب کاربران از نام نام برای جستجو در سیستم استفاده می کنند، بنابراین با آن شروع کنیم. اجازه دهید چند مثال را بررسی کنیم.

جستجو بر اساس افزونه

فرض کنید شما باید در سیستم یک پرونده با پسوند "xlsx" پیدا کنید که در دایرکتوری "Dropbox" واقع شده است. برای انجام این کار، از دستور زیر استفاده کنید:

find /home/user/Dropbox -name "*.xlsx" -print

از نحو آن می توان گفت که جستجو در دایرکتوری "Dropbox" ( "/ home / user / Dropbox" ) انجام می شود و شیء جستجو باید با پسوند ".xlsx" باشد. ستاره نشان می دهد که جستجو در تمام فایل های این برنامه افزودنی انجام می شود و نام آنها در نظر گرفته نمی شود. "چاپ" نشان می دهد که نتایج جستجو نمایش داده خواهد شد.

مثال:

مثال انجام جستجوی در یک پوشه خاص با فرمت فایل در لینوکس

جستجو بر اساس نام فایل

به عنوان مثال، شما می خواهید یک فایل به نام "lumpics" در پوشه "/ home" پیدا کنید ، اما فرمت آن ناشناخته است. در این مورد، موارد زیر را انجام دهید:

find ~ -name "lumpics*" -print

همانطور که می بینید، شخصیت "~" در اینجا استفاده می شود، به این معنی که جستجو در دایرکتوری خانگی انجام می شود. پس از نام "نام" گزینه، نام فایل مورد جستجو برای مشخص شده است ( "lumpics * ). یک ستاره در انتها به این معنی است که جستجو تنها با نام، بدون پسوند انجام می شود.

مثال:

نمونه ای از اجرای فایل جستجو در دایرکتوری خانه لینوکس

جستجو در اولین نامه در نام

اگر فقط اولین حرفی که نام فایل شروع می شود را به خاطر بسپارید، یک دستور دستور خاص وجود دارد که به شما کمک می کند آن را پیدا کنید. به عنوان مثال، شما می خواهید یک فایل را پیدا کنید که با یک حرف از "g" به "l" شروع می شود و شما نمی دانید که کدام یک از آنها در آن قرار دارد. سپس شما باید دستور زیر را اجرا کنید:

find / -name "[gl]*" -print

با قضاوت نماد "/" که درست پس از فرمان اصلی درست می شود، جستجو از طریق دایرکتوری ریشه انجام می شود، یعنی در کل سیستم. علاوه بر این، بخش "[gl] *" بدین معنی است که کلمه جستجو با یک حرف خاص شروع می شود. در مورد ما، از "g" به "l" .

به هر حال، اگر شما می دانید پسوند فایل، پس از نماد "*" شما می توانید آن را مشخص کنید. به عنوان مثال، شما باید یک پرونده را پیدا کنید، اما می دانید که دارای پسوند ".odt" است . سپس می توانید از دستور زیر استفاده کنید:

find / -name "[gl]*.odt" -print

مثال:

یک نمونه از جستجو برای یک فایل با حرف اول و گسترش آن در لینوکس

روش 2: جستجو در حالت دسترسی (option -perm)

گاهی اوقات لازم است که یک شیء را پیدا کنید که نام شما را نمی داند، اما شما می دانید چه حالت دسترسی دارد. سپس شما باید از گزینه "-perm" استفاده کنید.

این بسیار ساده است برای استفاده، شما فقط نیاز به تعیین محل جستجو و حالت دسترسی. در اینجا یک مثال از این فرمان است:

find ~ -perm 775 -print

یعنی جستجو در بخش خانه انجام می شود و اشیاء مورد نظر به 775 دسترسی خواهند داشت. شما همچنین می توانید یک علامت "-" را در مقابل این علامت تجسم کنید، سپس اشیاء یافت شده بیت های مجاز از صفر به مقدار مشخص شده را داشته باشند.

روش 3: جستجوی توسط کاربر یا گروه (گزینه های کاربر و گروه)

در هر سیستم عامل کاربر و گروه وجود دارد. اگر می خواهید یک شیء متعلق به یکی از این دسته ها را پیدا کنید، سپس می توانید از گزینه "-user" یا "-group" استفاده کنید .

جستجو برای یک فایل با نام کاربری آن

به عنوان مثال، شما باید فایل "Lampics" را در دایرکتوری "Dropbox" پیدا کنید ، اما نمیدانید چه نامیده می شود و فقط می دانید که آن متعلق به کاربر "کاربر" است . سپس شما باید دستور زیر را اجرا کنید:

find /home/user/Dropbox -user user -print

در این دستور، دایرکتوری مورد نیاز ( / home / user / Dropbox ) را مشخص کردید، نشان دادید که باید برای فایل متعلق به کاربر ( کاربر ) جستجو کنید و مشخص کنید کدام کاربر این فایل متعلق به ( کاربر ) است.

مثال:

فایل جستجو توسط کاربر لینوکس

همچنین ببینید:
نحوه مشاهده لیستی از کاربران در لینوکس
نحوه اضافه کردن یک کاربر به یک گروه در لینوکس

برای نام فایل گروهی را جستجو کنید

جستجو برای یک فایل که متعلق به یک گروه خاص است، همانقدر آسان است - شما فقط باید گزینه "-user" را با گزینه "-group" جایگزین کنید و نام این گروه را مشخص کنید:

find / -groupe guest -print

به این معنی، شما نشان داده اید که می خواهید در سیستم یک فایل متعلق به گروه "مهمان" را پیدا کنید . جستجو در سراسر سیستم رخ می دهد، این کار با نماد "/" نشان داده می شود .

روش 4: جستجو برای یک فایل با نوع آن (option -type)

پیدا کردن برخی از عناصر در یک نوع خاص از لینوکس بسیار ساده است، شما فقط باید گزینه مناسب ( نوع ) را مشخص کنید و نوع را شناسایی کنید. در ابتدای مقاله، همه نوع مشخصاتی که می توان برای جستجو استفاده کرد، ذکر شده است.

به عنوان مثال، شما می خواهید تمام فایل های بلوک را در پوشه خانه خود پیدا کنید. در این مورد، تیم شما مانند این خواهد بود:

find ~ -type b -print

به این ترتیب، شما نشان دادید که شما با جستجوی نوع فایل، با تایپ "-type" مشخص می شوید و سپس با قرار دادن نماد فایل بلوک - "b"، نوع آن را تعیین می کنید.

مثال:

جستجو برای فایل های بلوک با استفاده از دستور type در یک ترمینال لینوکس

به همان شیوه، شما می توانید تمام دایرکتوری ها را در دایرکتوری مورد نظر را با تایپ کردن نماد "d" در فرمان ببینید:

find /home/user -type d -print

روش 5: جستجو برای یک فایل به اندازه (گزینه اندازه)

اگر از تمام اطلاعات در مورد فایل شما فقط اندازه آن را می دانید، حتی این ممکن است برای پیدا کردن آن کافی باشد. به عنوان مثال، شما می خواهید یک فایل از 120 مگابایت در یک پوشه خاص را با انجام موارد زیر دنبال کنید:

find /home/user/Dropbox -size 120M -print

مثال:

خروجی فرمان برای جستجو برای یک فایل از یک اندازه خاص

همچنین ببینید: چگونه می توان اندازه پوشه را در لینوکس دانست

همانطور که می بینید، فایل مورد نیاز ما پیدا شده است. اما اگر شما نمی دانید که در کدام دایرکتوری قرار دارد، می توانید کل سیستم را با مشخص کردن دایرکتوری ریشه در ابتدای دستور جستجو کنید:

find / -size 120M -print

مثال:

جستجو برای یک فایل از یک اندازه خاص در سراسر سیستم لینوکس

اگر تقریبا اندازه فایل را می دانید، در این صورت یک فرمان خاص وجود دارد. شما باید قبل از مشخص کردن اندازه فایل، قبل از مشخص کردن اندازه فایل، علامت "-" (اگر شما نیاز به پیدا کردن فایل های کوچکتر از اندازه مشخص شده) یا "+" (در صورتی که اندازه فایل مورد نیاز بزرگتر از یک مشخص شده باشد)، باید در همان Terminal ثبت نام کنید. در اینجا یک مثال از این فرمان است:

find /home/user/Dropbox +100M -print

مثال:

اندازه فایل جستجو بزرگتر از لینوکس

روش 6: فایل جستجو با تاریخ تغییر (گزینه -mtime)

مواردی وجود دارد که راحت تر برای جستجو برای یک فایل با تاریخ تغییر آن وجود دارد. در لینوکس، گزینه "-mtime" برای این کار استفاده می شود. استفاده از آن بسیار ساده است، ما همه چیز را در یک مثال بررسی خواهیم کرد.

برای مثال، در پوشه Images، ما باید اشیایی را که برای 15 روز گذشته اصلاح شده اند پیدا کنیم. در اینجا چیزی است که شما باید در "ترمینال" ثبت نام کنید:

find /home/user/Изображения -mtime -15 -print

مثال:

مثال از پیدا کردن فایل ها با تاریخ آخرین ویرایش با استفاده از دستور find command linux

همانطور که می بینید، این گزینه نه تنها فایل هایی را که در یک دوره مشخص تغییر کرده اند، بلکه همچنین پوشه ها را نشان می دهد. این در جهت مخالف کار می کند - شما می توانید اشیایی را که بعد از دوره مشخص شده تغییر یافتند پیدا کنید. برای انجام این کار، علامت + را در مقابل ارزش دیجیتالی وارد کنید:

find /home/user/Изображения -mtime +10 -print

رابط کاربری گرافیکی

رابط گرافیکی به شدت زندگی از تازه واردان را که توزیع لینوکس را نصب کرده اند، تسهیل می کند. این روش جستجو بسیار شبیه به یک سیستم عامل ویندوز است، هرچند که نمی تواند تمام مزایایی که Terminal ارائه می دهد ارائه دهد. اما اولین چیزها اول. بنابراین، اجازه دهید نگاهی به نحوه انجام جستجوی فایل در لینوکس با استفاده از رابط گرافیکی سیستم کنیم.

روش 1: جستجو از طریق منوی سیستم

در حال حاضر ما در مورد چگونگی پیدا کردن فایل ها از طریق منوی سیستم لینوکس نگاه خواهیم کرد. عملیات در توزیع اوبونتو 16.04 LTS انجام خواهد شد، اما دستورالعمل برای همه مشترک است.

همچنین ببینید: نحوه پیدا کردن نسخه توزیع لینوکس

فرض کنید شما نیاز به پیدا کردن فایل های تحت نام "پیدا کردن من" در سیستم است، همچنین دو فایل در سیستم وجود دارد: یکی در قالب ".txt" ، و دیگری ".odt" . برای پیدا کردن آنها، ابتدا باید روی نماد منو (1) کلیک کنید و در فیلد ورودی خاص (2) پرس و جو جستجو «Find me» را مشخص کنید .

یک نتیجه جستجو نمایش داده می شود، نشان دادن فایل هایی که شما دنبال آن هستید.

نتایج جستجو فایل ها از طریق منوی سیستم لینوکس انجام می شود

اما اگر چنین سیستمی در سیستم وجود داشته باشد و همه آنها فرمت های متفاوت بودند، جستجو پیچیده تر خواهد بود. برای حذف فایل های غیر ضروری، به عنوان مثال، برنامه ها، در خروجی نتایج، بهتر است از یک فیلتر استفاده کنید.

این در سمت راست منو واقع شده است. شما می توانید با دو معیار فیلتر کنید: "دسته ها" و "منابع" . این دو لیست را با کلیک روی فلش کنار نام، و در منو، انتخاب از موارد غیر ضروری را گسترش دهید. در این مورد، عاقلانه تر خواهد بود که فقط جستجوی «فایل ها و پوشه ها» را ترک کنیم ، زیرا ما دقیقا به دنبال فایل ها هستیم.

تنظیم فیلتر در منوی سیستم لینوکس هنگام جستجو برای فایل ها

شما می توانید بلافاصله ضعف این روش را مشاهده کنید - شما نمی توانید فیلتر را به طور دقیق پیکربندی کنید، همانطور که در "ترمینال" است . بنابراین اگر شما یک اسناد متنی را با یک نام جستجو کنید، می توانید تصاویر، پوشه ها، آرشیو ها و غیره را در خروجی نشان دهید. اما اگر نام دقیق پرونده مورد نظر را می دانید، می توانید بدون دانستن روش های بسیاری از آن پیدا کنید "

روش 2: جستجو از طریق مدیر فایل

روش دوم مزیت قابل توجهی دارد. با استفاده از ابزار مدیریت فایل، شما می توانید در دایرکتوری مشخص جستجو کنید.

این عملیات را آسان انجام دهید. شما در مدیر پرونده Nautilus مورد نیاز خود را برای ورود به پوشه ای که فایل مورد نظر شما قرار دارد قرار دهید و روی دکمه جستجو در گوشه بالا سمت راست پنجره کلیک کنید.

با کلیک بر روی دکمه جستجو در فایل manager nautilus در لینوکس

در فیلد ورودی ظاهر شما باید نام فایل برآورد شده را وارد کنید. همچنین فراموش نکنید که جستجو را می توان با نام کل نام فایل انجام داد، اما تنها بخشی از آن، همانطور که در مثال زیر نشان داده شده است.

در فایل لینوکس فایل نکته را بخشی از نام آن را در فایل manager nautilus جستجو کنید

همانطور که در روش قبلی، به این ترتیب شما می توانید یک فیلتر استفاده کنید. برای باز کردن آن، روی دکمه با علامت "+" کلیک کنید، واقع در قسمت سمت راست فیلد ورودی پرس و جو جستجو. یک زیر منو باز می شود که در آن شما می توانید نوع فایل را از لیست کشویی انتخاب کنید.

فیلتر کردن در جستجوی در فایل manager nautilus در لینوکس

نتیجه گیری

از موارد فوق می توان نتیجه گرفت که روش دوم، وابسته به استفاده از یک رابط گرافیکی، مناسب برای انجام جستجوی سریع از طریق سیستم می باشد. اگر شما نیاز به تنظیم بسیاری از پارامترهای جستجو دارید، سپس دستور find در ترمینال ضروری خواهد بود.