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

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

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

جهت سرچ براساس نام نیاز است از دستور find  با سوئیچ -name استفاده کنید، البته اگر می خواهید بحروف بزرگ و کوچک حساس نباشد بجای -name  از -iname استفاده کنید.

بطور مثال اگر می خواهید فایلی بنام test.jpg را در دایرکتوری جاری سرچ کنید. دستور بصورت زیر می شود.

جهت سرچ کلیه فایل ها در دایرکتوری /home و با نام test.txt لازم است دستور زیر را اجرا کنید :

بعنوان مثال در تصویر زیر فایل هایی با نام passwd در دایرکتوری / سرچ شده و خروجی بصورت زیر مشاهده شده است:

 

جستجوی پوشه ها براساس نام

ساختار دستور بصورت زیر می باشد:

بعنوان مثال برای جستجو تمام پوشه های بنام backup در /home دستور بصورت زیر تغییر می کند:

یا بطور مثال برای پیدا کردن فایل های مخفی در /home/aban/public_html/ از دستور زیر استفاده کنید:

بعنوان مثال در تصویر زیر پوشه هایی با نام  public_html در دایرکتوری / سرچ شده و خروجی بصورت زیر مشاهده شده است:

 

 

جستجوی فایل ها با پسوند خاص

ساختار دستور بصورت زیر می باشد:

بطور مثال جهت سرچ فایل هایی با پسوند .php در مسیر جاری دستور بصورت زیر تغییر می یابد:

 

جستجوی فایل ها با سطح دسترسی خاص

ساختار دستور بصورت زیر می باشد:

بطور مثال  برای پیدا کردن کلیه فایل ها با سطح دسترسی ۷۷۷ از دستور زیر می توانید استفاده کنید.

 

 

جستجوی دایرکتوری ها با سطح دسترسی خاص

ساختار دستور بصورت زیر می باشد، بصورت کلی type  با سوئیچ f برای فایل ها وبا سوئیچ d برای دایرکتوری/پوشه ها استفاده می شود.

بطور مثال  برای پیدا کردن کلیه پوشه ها با سطح دسترسی ۷۷۷ از دستور زیر می توانید استفاده کنید.

با استفاده از !  در دستور FIND  می  توانید عملیات جستجوی معکوس را انجام دهید.

بعنوان مثال جهت جستجوی تمام فایل ها موجود در /home که پرمیژن آن ۷۷۷ نیست از دستور زیر استفاده کنید:

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

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

جهت جستجوی پوشه های خالی از دستور با ساختار زیر استفاده کنید:

 

 

جستجوی فایل های یک یوزر خاص

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

بطور مثال برای جستجو تمام فایل هایی که متعاق به یوزر aban و در مسیر /home/admin  است، دستور بصورت زیر می باشد:

 

جستجوی فایل ها بر اساس حجم

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

بعنوان مثال جهت جستجوی فایل ها با حجم بیشتر از ۵۰ و کمتر از ۱۰۰  مگابایت  دستور بصورت زیر تغییر می کند:

بعنوان مثال در تصویر زیر فایل های لاگ موجود در سرور با حجم بیشتر از ۱۰ مگابایت سرچ شده و در خروجی نمایش داده می شود:

 

 

کاربرد -exec در دستور find

با -exec شما می توانید مشخص کنید چه عملیاتی بر روی خروجی دستور اجرا شود.

بطور مثال سطح دسترسی کلیه فایل ها  موجود در یک مسیر را از ۷۷۷ به  ۶۴۴ تغییر دهید.

کلیه فایل های .mp3 در مسیر جاری را حذف نمائید.

لیست کلیه فایل های لاگ با حجم بیشتر از ۱۰۰ مگ را مشاهده کنید.

 

جستجوی فایل ها بر اساس ساعت و تاریخ

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

بعنوان مثال جهت جستجوی فایل هایی که در ۵۰ روز پیش در مسیر / تغییر کرده اند از دستور زیر استفاده نمائید.

جستجوی کردن تمام فایل هایی که در  مسیر / در ۵۰ روز پیش به آن ها دسترسی پیدا شده است، مشاهده شده اند.

جستجوی تمام فایل هایی که در یک ساعت اخیر تغییر داده شده اند.

جستجوی تمام فایل هایی که در یک ساعت اخیر ویرایش شده اند.

newerXy : این گزینه در صورتی قابل استفاده است که timestamp X فایلی که در جستجوی آن هستیم از timestamp Y آن جدیدتر باشد. بجای X و Yمیتوان هر یک از حروف زیر را استفاده کرد :

a: این سوئیچ زمان دسترسی فایل میباشد.

B :این آپشن زمان ایجاد فایل میباشد.

m: زمان تغییر فایل

t: با استفاده از این سوئیچ میتوانید مستقیما در دستور یک تاریخ را درج کنید.

بعوان مثال در دستور زیر تنها فایل هایی که در تاریخ ۲۰۱۶-۱۲-۰۶ در مسیر جاری تغییر داده شده اند جستجو میشوند:

 

maxdepth

با این آپشن میتوانید حداکثر عمق جستجو را با عنوان یک level مشخص کنید، که تا چندین level از subdirecotry های موجود از دایرکتوری جاری و یا دایرکتوری مورد جستجوی بررسی و search را انجام دهد.

جهت درک بهتر تصویر زیر را مشاهده کنید:

 

نوشته جستجوی فایل ها در لینوکس با دستور Find اولین بار در ایران سرور پدیدار شد.

گردآوری توسط ایده طلایی

دیدگاهتان را بنویسید