16 بهمن 1398
همه کاربران از قابلیت جستجو کردن در میان فایلها استفاده میکنند. این قابلیت در محیطهای ویندوزی با رابط گرافیکی و باکسی که برای این کار در نظر گرفته شده است انجام میشود.
در محیطهای command لینوکسی که فاقد رابط گرافیکی هستند، جستجو کمی متفاوت خواهد بود.
در این مقاله جستجو در محیط لینوکس با استفاده از دستور Find را توضیح میدهیم.
در محیطهای سروری لینوکس که از طریق ترمینال و command کارهای لازم اجرا میشود، جستجو متفاوت با محیطهای گرافیکی خواهد بود. در لینوکس از دستور Find برای جستجو استفاده میشود.
در ادامه نحوه استفاده از این دستور را برای جستجوهای مختلف بیان میکنیم.
با دستور Find میتوان جستجوهای متفاوتی انجام داد. برای مثال جستجو فایل یا پوشه بر اساس نام، جستجو بر اساس پسوند فایل، جستجو بر اساس سطوح مختلف دسترسیها، جستجو فایلهای یک یوزر خاص و…
برای انجام جستجو در هر شاخهای که نیاز دارید باید از دستور خاصی استفاده نمایید. تعدادی از مهمترین این دستورات را عبارت است از:
اگر قصد جستجو فایل یا پوشهای را نموده که نام آن در اختیارتان هست باید از دستور زیر استفاده نمایید:
Find / -name (نامی که قصد جستجو دارید)
این دستور چند بخش اصلی دارد. اولین بخش وجود عبارت Find در ابتدا میباشد. پس از آن باید مسیر جستجو مشخص شود. در عبارت فوق علامت / نشان این است که جستجو باید در تمام دایرکتوری انجام شود. شما میتوانید برای کم شدن حجم جستجو مسیر مستقیم را آدرسدهی کنید و یا تا حد امکان آن را محدود نمایید. همچنین میتوانید ابتدا به مسیر مورد نظر رفته و در آنجا با گذاشتن نقطه جستجو را در همان قسمت انجام دهید.
قسمت name- نیز ثابت بوده و پس از آن باید نام مورد نظر را وارد نمایید.
نکته قابل توجه در جستجو بر اساس نام رعایت حروف کوچک و بزرگ است.
برای مثال دو عبارت “gitiserver” و “Gitiserver” در جستجو نتایج متفاوتی را خواهد داشت.
اگر دقیقا نمیدانید که فایل یا پوشهای که دنبال آن میگردید با حروف کوچک نوشته شده یا بزرگ، برای جستجو به جای عبارت name از iname استفاده نمایید؛ مانند عبارت زیر:
Find / -iname (نامی که قصد جستجو دارید)
همچنین اگر میخواهید که جستجو فقط برای فایلها انجام بشه یا فقط برای پوشهها باید از type استفاده نمایید.
جستجو در میان فقط پوشهها(directory):
find / -type d -name (نام مورد نظر)
جستجو در میان فقط فایلها(file):
find / -type f -name (نام مورد نظر)
اگر قصد دارید فایلی را جستجو نمایید که فقط پسوند آن را میدانید باید از دستور زیر استفاده نمایید.
find / -type f -name “*.پسوند”
برای مثال اگر فایلهایی با پسوند png را میخواهید باید به طریق زیر عمل کنید:
find / -type f -name “*.png”
ممکن است بخواهید سطح دسترسیهای مشخصی را جستجو کنید.
برای این کار از عبارت perm در جستجو باید استفاده کنید؛ مانند عبارت زیر:
find / -type f -perm 0777 -name (نام فایل)
با زدن این دستور شما فایلی را با نامی که وارد میکنید و سطح دسترسی 777 جستجو مینمایید.
همچنین اگر به دنبال فایلهایی هستید که قابلیت اجرایی دارند از عبارت زیر استفاده نمایید.
find / -perm /a=x
اگر میخواهید فایلهای مربوط به کاربری خاص را جستجو کنید مانند جستو بر اساس نام پوشه یا فایل اقدام نمایید. به جای نام پوشه یا فایل باید نام کاربر مورد نظر را وارد کنید.
مانند عبارت زیر:
find / -name username
در این دستور شما به جای username نام کاربر مورد نظر را وارد کنید.
با اجرای این دستور، تمام فایلها یا پوشههایی که در دایرکتوری مربوط به این کاربر است را مشاهده خواهید کرد.
اگر عبارت time را در دستورات خود داشته باشید میتوانید فایلها را بر اساس زمانی که در سرور تغییری کرده است(Modified) بیابید.
برای مثال اگر از عبارتی که در زیر آمده است استفاده نمایید، فایلی را که در ۱۰ روز گذشته Modified شده است را مییابید.
find / -mtime 10
به طور کلی اگر از time استفاده کردید عددی که در جلوی آن مینویسید نشانگر روز خواهد بود و اگر از min استفاده شود، عدد مقابل آن نشانگر دقیقه میباشد.
find / -cmin -30
عبارت بالا فایلهایی را که متادیتای آنها(مثلا سطح دسترسی) در 30 دقیقه اخیر تغییر کرده است نمایش میدهد.
برای اینکه فایلهایی را با اندازههای مشخص جستجو نمایید از عبارت size استفاده کنید.
برای مثال دستور زیر تمام فایلهای با حجم ۲۰ مگابایت را برایتان مییابد.
find / -size 20M
همچنین میتوانید فایلها را در یک محدوده حجمی جستجو نمایید.
find / -size +10M -size -20M
دستور فوق فایلهایی که حجم آنها بین ۱۰ تا ۲۰ مگابایت میباشد را پیدا میکند.
هر چقدر حجم اطلاعات و فایلهای شما زیاد باشد، اهمیت جستجو کردن برایتان بیشتر خواهد بود. همچنین هر چه بتوانید فضای جستجو را محدودتر نمایید بهتر میتوانید نتیجه بگیرید.
دستور grep نیز برای جستجوی فایلها استفاده میشود.
توضیحات این دستور را در مقالات بعدی مشاهده خواهید کرد.
به همین سادگی!!
تمامی حقوق برای گیتی سرور محفوظ است.