نگارش بعد | نگارش قبلنگارش بعدنگارش بعد در دو طرف |
terminal:f:how-to-find-files-and-folders-in-linux-using-the-command-line [2019/01/04 13:04] – ایجاد شد phoenix | terminal:f:how-to-find-files-and-folders-in-linux-using-the-command-line [2019/01/04 14:53] – [چگونه فایل ها را بر اساس زمان پیدا کنیم؟] phoenix |
---|
</code> | </code> |
===== سوییچ exec- ببعد از یافتین جستجو عملیات خاصی را انجام میدهد ===== | ===== سوییچ exec- ببعد از یافتین جستجو عملیات خاصی را انجام میدهد ===== |
با استفاده از سوئیچ ''exec-'' میتوان پس از یافتن فایل ها دستوری مانند [[:دستور_rm_حذف_فایل_و_دایرکتوری|rm]] برای حذف آنها را اجرا کرد. بطور مثال در دستور زیر پس از یافتن تمامی فایل های خالی در سیستم با اجرای دستور [[:دستور_rm_حذف_فایل_و_دایرکتوری|rm]] توسط سوئیچ ''exec-'' آنها پاک خواهند شد. سوئیچ ''exec-'' یعنی فایلها (مسیر و نام فایل ها) جایگزین **{}** شده و سپس توسط دستور [[:دستور_rm_حذف_فایل_و_دایرکتوری|rm]] پاک میشوند. اولین خط دستورهای زیر شکل کلی استفاده از سوئیچ ''exec-'' را نشان میدهد و دومین دستور مثالی برای پاک کردن تمامی فایل های خالی است. | با استفاده از سوئیچ ''exec-'' میتوان پس از یافتن فایل ها دستوری مانند [[terminal:r:deleting-files-rm-command|rm]] برای حذف آنها را اجرا کرد. بطور مثال در دستور زیر پس از یافتن تمامی فایل های خالی در سیستم با اجرای دستور [[terminal:r:deleting-files-rm-command|rm]] توسط سوئیچ ''exec-'' آنها پاک خواهند شد. سوئیچ ''exec-'' یعنی فایلها (مسیر و نام فایل ها) جایگزین **{}** شده و سپس توسط دستور [[terminal:r:deleting-files-rm-command|rm]] پاک میشوند. اولین خط دستورهای زیر شکل کلی استفاده از سوئیچ ''exec-'' را نشان میدهد و دومین دستور مثالی برای پاک کردن تمامی فایل های خالی است. |
<code;bash;> | <code;bash;> |
find / -empty -exec rm -irf {} \; | find / -empty -exec rm -irf {} \; |
</code> | </code> |
===== چگونه فایل ها را بر اساس زمان پیدا کنیم؟ ===== | ===== چگونه فایل ها را بر اساس زمان پیدا کنیم؟ ===== |
در [[ترمینال:دستور_find_جستجوی_فایل_ها_و_دایرکتوری_ها#دسته چهارم: جستجوی فایل ها و پوشه ها بر اساس تاریخ و زمان|دسته چهارم]] با مثال این موضوع را بررسی کردیم در این قسمت تصمیم داریم به صورت دقیق تر این بخش را بررسی کنیم | در [[#دسته چهارم: جستجوی فایل ها و پوشه ها بر اساس تاریخ و زمانterminal:f:how-to-find-files-and-folders-in-linux-using-the-command-line|دسته چهارم]] با مثال این موضوع را بررسی کردیم در این قسمت تصمیم داریم به صورت دقیق تر این بخش را بررسی کنیم |
در این بخش چگونگی پیدا کردن فایل ها بر اساس زمان گفته خواهد شد هر فایل شامل سه مهر زمانی **Change Time - Access Time - Modift Time** است. در ادامه سوئیچ های مرتبط با هر کدام از **Timestamp** های گفته شده در دستور **find** آورده شده است. | در این بخش چگونگی پیدا کردن فایل ها بر اساس زمان گفته خواهد شد هر فایل شامل سه مهر زمانی **Change Time - Access Time - Modift Time** است. در ادامه سوئیچ های مرتبط با هر کدام از **Timestamp** های گفته شده در دستور **find** آورده شده است. |
*** atime- :** زمان دسترسی (زمانیکه فایل خوانده میشود) | *** atime- :** زمان دسترسی (زمانیکه فایل خوانده میشود) |
***mtime- :** زمان تغییر محتوای فایل | ***mtime- :** زمان تغییر محتوای فایل |
| |
با استفاده از دستور **stat** میتوانستیم اطلاعات زمانی بالا را پیدا کنیم. اگر با دستور [[:دستور_cat_نمایش_فایل_متنی_الحاق_چند_فایل_و|cat]] فایلی را بخوانید به آن دسترسی داشته اید و زمان **Access Time** تغییر میکند. اگر با دستوری مانند [[:دستور_vi_یا_vim_ویرایشگر_متن|vi]] محتوای یک فایل متنی را تغییر دهید زمان های **Modift Time** و **Change Time** تغییر میکند. اگر با دستور [[ترمینال:دستور_chmod_تغییر_مجوز_فایل_و_دایرکتوری|chmod]] مجوزهای فایل را تغییر دهید زمان **Change Time** تغییر میکند و برای دایرکتوری ها نیز اگر با دستور [[ترمینال:دستور_cd_تعویض_دایرکتوری_در_حال_کار|cd]] تغییر دایرکتوری به دایرکتوری جدید دهید زمان **Access Time** آن دایرکتوری جدید تغییر خواهد کرد. اگر با دستورهایی مانند [[:دستور_mkdir_ایجاد_دایرکتوری_جدید|mkdir]] یا [[terminal:دستور_touch_ایجاد_فایل|touch]] فایل یا دایرکتوری جدیدی را ایجاد کنید یا اگر نام یا دایرکتوری را تغییر دهید زمان های **Modift Time** و **Change Time** تغییر میکنند و در نهایت مانند فایل اگر مجوز را با دستور [[ترمینال:دستور_chmod_تغییر_مجوز_فایل_و_دایرکتوری|chmod]] تغییر دهید زمان **Change Time** تغییر خواهد نمود. شکل کلی استفاده از آنها بصورت زیر است. | با استفاده از دستور **stat** میتوانستیم اطلاعات زمانی بالا را پیدا کنیم. اگر با دستور [[terminal:c:linux_cat_command_usage_with_examples|دستور cat ]] فایلی را بخوانید به آن دسترسی داشته اید و زمان **Access Time** تغییر میکند. اگر با دستوری مانند [[terminal:v:linux_vi_and_vim_editor|دستور vi یا Vim]] محتوای یک فایل متنی را تغییر دهید زمان های **Modift Time** و **Change Time** تغییر میکند. اگر با دستور [[ترمینال:دستور_chmod_تغییر_مجوز_فایل_و_دایرکتوری|chmod]] مجوزهای فایل را تغییر دهید زمان **Change Time** تغییر میکند و برای دایرکتوری ها نیز اگر با دستور [[ترمینال:دستور_cd_تعویض_دایرکتوری_در_حال_کار|cd]] تغییر دایرکتوری به دایرکتوری جدید دهید زمان **Access Time** آن دایرکتوری جدید تغییر خواهد کرد. اگر با دستورهایی مانند [[terminal:m:how_to_create_a_directory_or_folder_mkdir_command|دستور mkdir]] یا [[terminal:t:how_to_use_the_touch_command|دستور touch]] فایل یا دایرکتوری جدیدی را ایجاد کنید یا اگر نام یا دایرکتوری را تغییر دهید زمان های **Modift Time** و **Change Time** تغییر میکنند و در نهایت مانند فایل اگر مجوز را با دستور [[ترمینال:دستور_chmod_تغییر_مجوز_فایل_و_دایرکتوری|chmod]] تغییر دهید زمان **Change Time** تغییر خواهد نمود. شکل کلی استفاده از آنها بصورت زیر است. |
<code;bash;> | <code;bash;> |
find <SEARCH_PATH> -atime X | find <SEARCH_PATH> -atime X |