ثبت نام .: | :. ورود
ثبت دامنه
سرور رایگان
هاست رایگان
021-41807
پارس پک ، اولین ارائه دهنده خدمات رایانش ابری در ایران
ParsPack
پــــارس پــــک با اتکا به فناوری پیشرفته خود، اولین ارائه دهنده خدمات رایانش ابری در ایران می باشد؛ شما می توانید ضمن استفاده از سرور های اختصاصی و ســـرور های مجازی، از اولـین کاربـران ایـرانی خدمات ابری باشید و از مشاوره رایـگان برای دریافت بهترین خدمات استفاده کنید. با ما تماس بگیرید: 41807-021 و 22118705

سرور ایران


بزرگترین ویژگی سرور های ایران در افزایش سرعت نمایش وب سایت تا چند برابر می باشد و این موضوع برای مخاطبین وب سایت شما کاملا محسوس خواهد بود. همچنین برای گیم سرور ها نیز توصیه می شود که حتما از سرور های مستقر در ایران استفاده نمایند. شما می توانید سرور خود را بسته به نیاز بر روی اینترانت ملی و یا اینترنت میزبانی نمائید.
 
All the best people in life seem to like LINUX.
Steve Wozniak

Findجستجوی یک فایل یا پوشه در سیستم عامل ویندوز به لطف نوار Search از پیش تعریف شده در بخش بالایی Windows Explorer بسیار ساده است. لیکن این فرآیند برای کاربران سیستم عامل لینوکس ( Linux ) در نسخه های سروری ، با در نظر گرفتن عدم بهره مندی از محیط گرافیکی ، قدری پیچیده است . در مقاله پیش رو به معرفی یکی از معروفترین و کارامد ترین ابزار های جستجو در سیستم عامل های لینوکس خواهیم پرداخت. ابزار مورد بحث که Find نام دارد ، بصورت پیشفرض در همه توزیع های لینوکسی نصب بوده و با کمک طیف گسترده ای از گزینه ها ( Option ) های خود به شما کمک می کند فیلتر های متعددی در جستجوی خود قرار دهید تا دقیقترین نتیجه مطلوب را بیابید.

دستور Find ( بخوانید فایند ) از طریق محیط شل لینوکس  ( Shell ) اجرا شده و به شما کمک می کند فایل ها بر اساس دسته بندی های زیر جستجو نمایید.

 

 

  • بر اساس نوع ، اعم از پوشه ( Directory ) و یا فایل
  • بر اساس نام که می تواند حتی بخشی از نام فایل باشد
  • بر اساس زمان و تاریخ
  • بر اساس سطوح دسترسی
  • بر اساس سایز
  • بر اساس محتویات فایل

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

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

برای این منظور مطابق الگوی زیر به استفاده از آپشن name می پردازیم:

Find / -name parspack


دستور فوق دو بخش اصلی دارد. پس از کلمه find به ذکر مسیر مورد نظر برای جستجو می پردازیم. در این مثال / معادل با دایرکتوری اصلی لینوکس است که در نتیجه آن کل محیط سرور جستجو خواهد شد. این بخش می تواند با نشانی دقیق مسیر مورد نظر جایگزین شود. همچنین اگر پیش از اجرای دستور به مسیر مورد نظر برویم ، می توان با قرار دادن نقطه ، پروسه را در دایرکتوری جاری انجام داد. بخش دوم پس از گزینه name می آید که شامل نام فایل و یا پوشه مورد نظر است.
اگر نام فایل شامل فاصله ( Space ) و یا کاراکتر اجرایی و معنی دار برای shell لینوکس است ، می توانید آن را در Double quotes قرار دهید.
با توجه به اینکه لینوکس بین حروف کوچک و بزرگ تفاوت قائل می شود ، پوشه ای با نام Ali و ali متفاوت از یکدیگر هستند. حال اگر بخواهیم هر دو این پوشه ها را در نتایج جستجو داشته باشیم ، بجای آپشن name بایستی از iname استفاده کنیم تا جستجوی ما in case sensitive ( غیر حساس به بزرگی و کوچکی حروف ) شود.

جستجوی فایل ها و پوش ها بر اساس نوع:


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

find / -type d -name parspack
find / -type f -name parspack


مثال اول با استفاده از d به جستجوی پوشه ها ( Directory ) و مثال دوم به جستجوی فایل ها ( File ) می پردازد.

جستجوی فایل ها بر اساس پسوند:


در صورتی که بخواهید مثلا فایل های jpg موجود در یک مسیر خاص را جستجو نمایید ، بایستی از الگویی مشابه مثال زیر استفاده کنید:

find / -type f -name “*.jpg”

 

جستجو بر اساس سطوح دسترسی ( Permision ):


بمنظور جستجو بر اساس پرمیژن ها از آپشن prem استفاده می کنیم.

find / -type f -perm 0777 -name parspack.php


در این مثال به دنبال یک فایل با نام parspack.php و با دسترسی 777 هستیم.
همچنین بمنظور پیدا کردن فایل هایی با پرمیژن اجرایی از الگوی زیر استفاده می کنیم:

find / -perm /a=x


مثال فوق تمامی فایل های با سطح دسترسی قابل اجرا بر روی سرور را می یابد.
اگر بخواهیم فایل هایی با دسترسی 777 را یافته و سپس سطح دسترسی آنها را به 644 تغییر دهیم از ترکیب خروجی دستور find با دیگر دستور ها استفاده می کنیم.

find / -type f -perm 0777 -print -exec chmod 644 {} \;


استفاده از exec در ادامه دیگر دستورات لینوکسی به احتیاط و توجه زیاد نیاز دارد. دستور find به تنهایی فقط فایل ها را پیدا می کند ولی exec قابلیت اجرای دستورات دیگر را دارد و مثلا کاهش سطح دسترسی برخی فایل ها می تواند منجر به وقوع مشکل در کارکرد نرم افزاری خاص و یا کرنل ( Kernel ) گردد. لذا این شکل استفاده از دستور ها به کاربران مبتدی توصیه نمی شود. بهتر است جهت احتیاط بیشتر ابتدا خروجی دستور find را دقیق بررسی فرمایید و پس از اطمینان ، اقدام به اعمال تغییرات مورد نظر با استفاده از exec کنید .
همچنین در صورت نیاز به حذف نتایج جستجوی find ، الگوی استفاده شده در مثال زیر کاربر دارد:

find . -type f -name "*.txt" -exec rm -f {} \;


این مثال تمامی فایل های با پسوند txt را در کل سرور یافته و سپس حذف می کند.

جستجو بر اساس نام کاربری:


اگر قصد یافتن فایل ها را بر اساس نام مالک داشته باشیم ، بایستی از گزینه name استفاده کنیم.

find / -name parspack


در این مثال عملیات جستجو در مسیر / و بر اساس فایل هایی با مالکیت parspack صورت می پذیرد.
آپشن group نیز به منظور جستجو بر اساس نام گروه کاربری استفاده می شود:

find /home -group developer

 

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


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

  • Modified که با m مشخص می شود و به معنی تغییر در محتوای فایل است.
  • Accessed که با a مشخص می شود که به معنی دسترسی ( خواندن ) فایل است.
  • Changed که با c مشخص می شود و معادل با تغییر در متا دیتای ( Metadata ) فایل است. ولی محتوا دست نخورده باقی مانده است.

در آپشن مورد استفاده برای این بخش اگر از time استفاده شود ، عدد مقابل آن به معنی روز است و اگر از min استفاده شد عدد مقابل آن معرف تعداد دقیقه است.

find / -mtime 10


دستور فوق به معنی یافتن فایلی در مسیر / است که در 10 روز گذشته m ( Modified ) شده است.

find / -mtime +10 –mtime -20


این مثال به معنی یافتن فایلی است که بین 10 تا 20 روز گذشته modify شده است. بعبارتی بیشتر از 10 روز و کمتر از 20 روز گذشته تغییری در محتوای آن ایجاد شده است.

find / -cmin -30


در مثال فوق به دنبال یافتن فایل هایی هستیم که ظرف 30 دقیقه اخیر متادیتای آنها ( مثلا سطح دسترسی ) تغییر یافته است.

جستجوی فایل ها بر اساس سایز:


آپشن size بمنظور اجرای عملیات جستجو بر اساس سایز کاربرد دارد.

find / -size 20M


مثال فوق برای یافتن تمامی فایل های 20 مگابایتی بر روی سرور استفاده می شود.

find / -size +10M -size -20M


در صورتی که بخواهیم فایل های بزرگتر از 10 مگابایت و کوچکتر از 20 مگابایت ( سایز بین 10 تا  20 مگابایت ) را جستجو کنیم ، از الگوی ذکر شده در مثال قبل استفاده می کنیم.
دستور زیر فایل های با پسوند jpg را در کل سرور جستجو کرده و فایل هایی که سایز بزرگتر از 20 مگابایت داشته باشند را حذف می کند.

find / -type f -name *.jpg -size +20M -exec rm {} \;

 

 

 

کلیه حقوق برای شرکت دانش بنیان پارس پک محفوظ می باشد.
Copyright © 2017 Pars Parva System Ltd. ParsPack Cloud Computing Technology ® , All Rights Reserved.