مرکز آموزش
-
چگونه می توانیم فایل ها را با نامی خاص حذف کنیم؟
چگونه می توانیم فایل ها را با نامی خاص حذف کنیم؟
اگر بخواهید تمامی فایلها با یک پسوند را در سرورتان حذف کنید, با توجه به اینکه دستور"rm" قابلیت "search" ندارد, می توانید ازیکی از 2 دستور زیر برای انجام این عمل استفاده نمایید:
find . -name "FILE-TO-FIND"-exec rm -rf {} \;
و یا:
find . -type f -name "FILE-TO-FIND" -exec rm -f {} \;
در 2 دستور بالا تفاوتی وجود دارد. در دستور اولی ,علاوه بر فایلها, فولدرهایی که آن ویژگی را نیز دارند هم حذف می شوند. ولی در دستور دوم فقط فایلها حذف خواهند شد. در زیر, چند نمونه از کاربردهای این دستور آمده است:
مثال:
با استفاده از این دستور, تمتم فایلها در شاخه کنونی و زیر شاخه های مربوطه با پسوند ".bak " حذف می شوند.
find . -type f -name "*.bak" -exec rm -f {} \;
مثال:
با استفاده از این دستور, تمامی فایلها و فولدرهای شاخه کنونی وزیر شاخه های مربوطه با پسوند".bak" حذف می شوند.
find . -name "*.bak"-exec rm -rf {} \;
مثال:
با استفاده از این دستور, تمام فایلها در شاخه کنونی و زیر شاخه های مربوطه با پسوند ".bak" حذف می شوند. با این تفاوت که نیاز به تائید از جانب شما دارد.
find . -type f -name "*.bak" -exec rm -i {} \;