rm مخفف کلمه remove می‌باشد و یک ابزار خط فرمان برای حذف فایل‌ها و دایرکتوری‌ها در لینوکس است؛ این دستور، یکی از دستورات ضروری است که هر کاربر لینوکس باید با آن آشنا باشد.

در این مقاله، نحوه استفاده از دستور rm را از طریق مثال‌ها و توضیح گزینه‌های (سوئیچ) rm توضیح خواهیم داد.

 

نحوه استفاده از دستور rm

ساختار کلی برای دستور rm (حذف) به‌صورت زیر است:

rm [OPTIONS]... FILE...

به‌طور پیش‌فرض، هنگامی‌که این دستور بدون استفاده از هیچ گزینه‌ای اجرا می‌شود، rm دایرکتوری‌ها را حذف نمی‌کند و از کاربر در مورد اینکه آیا حذف فایل‌های داده شده را ادامه دهد یا نه، سؤال نمی‌کند.

برای حذف یک فایل، از دستور rm و به دنبال آن از نام فایل به‌عنوان یک ورودی استفاده کنید:

rm filename

اگر مجوز نوشتن در دایرکتوری پدر را نداشته باشید، خطای "Operation not permitted" که به معنی «عملیات مجاز نیست» دریافت خواهید کرد.

اگر بر روی فایل مجوز نوشتن تعریف نشده باشد، بدون هیچ اعلان و تائیدی حذف می‌شود. پس از اجرای موفقیت‌آمیز دستور، خروجی به کاربر نشان داده نمی‌شود.

هنگام حذف فایل‌هایی که مجوز نوشتن بر روی آن تعریف شده است، پس اجرای این دستور از شما تأیید می‌خواهد:

remove write-protected regular empty file 'filename'?

برای تأیید حذف فایل، کلید y را تایپ کرده و Enter را بزنید.

گزینه -f به rm می‌گوید بدون گرفتن تأیید از کاربر(قبل از حذف)، فایل را حذف نماید.

rm -f filename

اگر می‌خواهید اطلاعات مربوط به آنچه می‌خواهد حذف شود را به دست آورید، از گزینه –v (حرف اول کلمه verbose به معنی اضافه‌گویی) استفاده کنید:

rm -v filename

در این صورت، گزارشی از عملیات انجام شده در خروجی نشان داده می‌شود.

 

حذف چندین فایل

دستور rm به شما امکان را می‌دهد چندین فایل را در یک زمان پاک کنید. برای انجام این کار، نام فایل‌ها را به‌عنوان ورودی‌ها به همراه فاصله وارد نمایید:

rm filename1 filename2 filename3

برای حذف چندین فایل که یک ویژگی مشترکی دارند می‌توان از «عبارات قانونمند» (regex) استفاده کرد. به‌عنوان‌مثال، برای حذف همه فایل‌های .png در دایرکتوری فعلی، دستور زیر را تایپ کنید:

rm *.png

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

 

حذف دایرکتوری‌ها (پوشه‌ها)

برای حذف یک یا چند دایرکتوری خالی از گزینه -d استفاده کنید:

rm -d dirname

rm -d از لحاظ عملکردی با دستور rmdir یکسان است.

برای حذف بازگشتی دایرکتوری‌هایی که خالی نیستند به همراه تمام فایل‌های درون آن‌ها، از گزینه -r (حرف اول کلمه recursive به معنای بازگشتی) استفاده کنید:

rm -r dirname

 

گرفتن تأیید قبل از حذف

گزینه -i به rm می‌گوید که برای هر فایل داده شده، قبل از حذف از کاربر درخواست تأیید کن:

rm -i filename1 filename2

برای تأیید حرف y را تایپ کرده و Enter را فشار دهید:

rm: remove regular empty file 'filename1'? 
rm: remove regular empty file 'filename2'? 

هنگام حذف بیش از سه فایل یا حذف بازگشتی یک دایرکتوری، برای دریافت تنها یک درخواست تأیید برای کل عملیات، از گزینه -I استفاده کنید:

rm -i filename1 filename2 filename3 filename4

از شما خواسته می‌شود، حذف همه فایل‌ها و دایرکتوری‌های داده شده را تأیید کنید:

remove 4 arguments? 

 

rm -rf

احتمالا با دستور معروف rm -rf آشنا هستید؛ این دستور یکی از خطرناک‌ترین دستورات لینوکسی می‌باشد؛ زیرا توانایی این را دارد که کل سیستم‌عامل لینوکسی شما را نابود کند! گزینه (سوئیچ) "r" به دستور rm می‌گوید که حذف کردن را به صورت بازگشتی ادامه دهد و سوئیچ "f" به rm می‌گوید این کار را بدون پرسیدن هیچ سوال یا گرفتن هیچ تاییدی انجام دهد.

دستور زیر پوشه "dirname" و تمامی محتویات این پوشه را به صورت بازگشتی حذف خواهد کرد:

rm -rf dirname

دقت کنید که دستور rm -rf بسیار خطرناک است و باید بسیار محتاطانه استفاده شود!

نتیجه

ما به شما نشان دادیم كه چگونه از دستور rm  لینوکس استفاده كنید تا فایل‌ها و دایرکتوری‌ها را از روی سیستم لینوكس خود حذف نمایید.
هنگام حذف فایل‌ها یا دایرکتوری‌های مهم، بسیار مراقب باشید؛ زیرا فایلی که حذف می‌شود دیگر قابل بازیابی نیست.

منبع: این