আরএম-আরএফ কী করে?


25

rm -rfফাইল বা ডিরেক্টরি মুছে ফেলার জন্য ব্যবহৃত হয় তখন কী করবে ?

কীভাবে বিকল্প -rএবং -fবিকল্পগুলি একসাথে কাজ করে?



16
@ ড্যানডাসকলেসকু কারণ এটি মেন পৃষ্ঠাটি পড়ে তুচ্ছভাবে উত্তর দেওয়া হয়েছে, যা এই জাতীয় প্রশ্নের উত্তর দেওয়ার জন্য যে কোনও ব্যক্তির প্রথম কল হতে হবে।
ডেভিড রিচারবি

9
চেষ্টা করে দেখুন। (
স্পোলার

3
লিখেছেন গলির! এই প্রশ্নটি অবশ্যই ডেভ্রোবোটের কাছ থেকে হওয়া উচিত! ম্যান পৃষ্ঠাগুলির সাথে পরামর্শ না করে আপনি কীভাবে নিজের কর্ম স্তরে এটি তৈরি করতে পারেন। এখন ... তুমি কি মানুষ ?!
সিবিহে

2
পুরোপুরি সত্যিই একটি প্রেনকের মতো পড়ে। যেন কেউ জিজ্ঞাসা করার চেষ্টা করেছিল, "বৃষ্টি কি এইচ 2 ও দিয়ে তৈরি?" (একটি ভাল উত্তর হবে: সাধারণত হ্যাঁ, তবে ভবিষ্যতে একবার মানুষ পৃথিবীর অর্ধেক উদ্ভিদ ধ্বংস হয়ে যাবে, এর 50% অ্যাসিডে পরিণত হবে (অ্যাসিড বৃষ্টির মতো))
সিনট্যাকার্স

উত্তর:


52

কমান্ড rm -rfএকই হিসাবে rm -r -f

থেকে rmএর man পৃষ্ঠা (টাইপ man rmটার্মিনাল এটি দেখতে) -rআছে:

remove directories and their contents recursively

এবং -fকরে:

ignore nonexistent files and arguments, never prompt

সুতরাং সংমিশ্রণে তারা উভয়ই করে।

প্রকৃতপক্ষে এটি একটি অত্যন্ত বিপজ্জনক কমান্ড কারণ এটি আপনার নির্বাচিত ডিরেক্টরিটির (বা কেবল আপনার পছন্দসই ফাইলটি মুছে ফেলা হবে) এর পুনরাবৃত্তভাবে মুছে ফেলবে, এবং এটি আপনাকে কখনই অনুরোধ না করে এটি করবে।

এই আদেশটি যত্ন সহকারে ব্যবহার করুন!


@ পল, স্ল্যাশ কি করবে? আমি প্রায়শই ডায়ারগুলি সরানোর জন্য এবং ডাব্লু / ওএ স্ল্যাশ ব্যবহার করতে এই আদেশটি ব্যবহার করি।
অক্টোপাস

1
@ অক্টোপাস, নিজে থেকে স্ল্যাশই মূল ডিরেক্টরিটি নির্দেশ করে। rm -rf /তাত্ত্বিকভাবে আপনার কম্পিউটারে থাকা প্রতিটি ফাইল মুছে ফেলা হবে যা আপনার যে ডিরেক্টরিতে লেখার অনুমতি রয়েছে সেই ডিরেক্টরিতে থাকে। আপনি যদি রুট হন তবে এর অর্থ পুরো সিস্টেমটি মুছে ফেলা। (বাস্তবে, এটি কাজ করে না কারণ rmrm -r /--no-preserve-root
জিএনইউয়ের

10
সব মিলিয়ে, rm -rf /এটি সঠিকভাবে ধরা হয়েছে কিনা তা দেখার চেষ্টা করার পরামর্শ দিচ্ছি না ।
সিজেএম

2
@ ম্যাটবার্নেট এটি কোনও ভিএম-তেও বিপজ্জনক: আপনার কাছে মাউন্ট থাকতে পারে যা ভিএম-তে স্থানীয় নয়। বিশেষত, আমি বিশ্বাস করি হোস্ট এবং ভিএম এর মধ্যে ফাইলগুলি ভাগ করতে ভিএম-তে হোস্ট মেশিনের ডিরেক্টরিগুলির মধ্যে একটি মাউন্ট করা মোটামুটি সাধারণ।
এইচডিভি

1
@ ম্যাটবার্নেট আমার কাছে ভিএম আছে। আমার কাছে আলাদা করা ভিএম নেই। আমি কেবল অজানা এক্সিকিউটেবল চালাচ্ছি না। :)
এইচডিভি

22

পূর্ববর্তী সঠিক উত্তর ছাড়াও, আমি আপনাকে মাছ ধরতে শেখাতে চাই:

কমান্ড কীভাবে কাজ করে সে সম্পর্কে কী আপনি নিশ্চিত নন, কী কী বিকল্প রয়েছে এবং এটি কী করে, একটি টার্মিনাল খুলুন এবং টাইপ করুন

man <command>

উদাহরণ স্বরূপ:

man rm

সেখানে একবার, আপনি বিকল্পটি অনুসন্ধান করতে পারেন। একটি ম্যান পেজ পড়ার জন্য সত্যই দীর্ঘ হতে পারে, তাই টার্মিনালের ধরণে:

/<pattern>

সুতরাং উদাহরণস্বরূপ, করছেন:

/-f

আপনি সহজেই এখানে অবতরণ করতে পারেন:

-f, --force
              ignore nonexistent files and arguments, never prompt

এর জন্য:

-r, -R, --recursive
              remove directories and their contents recursively

আপনি n(পরবর্তী) এবং N(পূর্ববর্তী) ব্যবহার করে অনুসন্ধান ফলাফলের মধ্যে সরাতে পারেন ।

বোনাস:

আপনার যদি কিছু করার দরকার হয় তবে আপনি কমান্ডের নামটি জানেন না, aproposম্যান পৃষ্ঠাগুলিতে অনুসন্ধান করতে ব্যবহার করুন :

apropos <pattern>

উদাহরণ স্বরূপ:

apropos directory listing

8

rmঅপসারণের জন্য সংক্ষিপ্ত। rপতাকা অপসারণ ডিরেক্টরি এবং তাদের বিষয়বস্তু যাও recursively এবং হয় fমানে বল, এবং এটি কোনো নিশ্চিতকরণ অনুরোধ জানানো ওভাররাইড করে।


3
r flag is to remove directories কড়া কথা বলা ঠিক নয়..তাই এর বিষয়বস্তু সহ ডিরেক্টরিগুলি সরিয়ে দেয়, এটি একটি পুনরাবৃত্ত অপারেশন..আপনার কথার সাথে তাল মিলিয়ে এটি কেবল ডিরেক্টরিগুলি সরিয়ে ফেলবে, এর অধীন সাবডিয়ার্স, ফাইলগুলির কী হবে? ডিরেক্টরি এন্ট্রি হিসাবে কেবল নাম-ইনোড ম্যাপিং রয়েছে, এটি কেবল কোনও অর্থ দেয় না ..
হিমাইল

আপনি ঠিক বলেছেন, আমি আমার উত্তর সম্পাদনা করব।
ক্রিস

1
-r ডিরেক্টরি এবং তাদের বিষয়বস্তু পুনরাবৃত্তভাবে সরান।
জিম বাল্টার

3

যেমন ইতিমধ্যে উল্লেখ করা হয়েছে, rm -rf <ARG>জোর করে ফাইলগুলি পুনরাবৃত্তভাবে মুছে ফেলার উদ্দেশ্যে বোঝানো হয়েছে, যেখানে <ARG>একটি ডিরেক্টরি রয়েছে (যদিও এটি কেবল একটি ফাইল হতে পারে)।

-r(পুনরাবৃত্তকরণ অপসারণ) এর সম্পূর্ণ বিন্দুটি হ'ল rmডিরেক্টরিগুলি খালি না হলে সরাতে পারে না, কেবলমাত্র কারণ অন্তর্নিহিত সিস্টেম কল যা rmব্যবহার করে ( লিঙ্কমুক্ত ) কেবল খালি ডিরেক্টরিতে কাজ করে। সুতরাং, -rফ্ল্যাগটি যা করে তা হ'ল গভীরতা-প্রথম অনুসন্ধানটি ডিরেক্টরিগুলিতে নেমে প্রথমে ফাইলগুলি সরিয়ে ফেলা হয় এবং কেবল তখন ডিরেক্টরিটি ফাঁকা থাকে - এটি এটি সরিয়ে ফেলবে। এই একই প্রভাবটি পতাকা findসহ কমান্ডের মাধ্যমে অর্জন করা হয় -delete(যখন আপনি ফিল্টারিং নির্দিষ্ট করে না -type, তবে এটি অন্য গল্প)।

যেমন -fএটি দুটি কাজ করে - একটি আপনি ফাইলটি সরিয়ে ফেলতে চান কিনা তা অনুরোধ করে বাধা দেয় (যেমন আপনি যখন আপনার ডিরেক্টরিতে অন্য কোনও ব্যবহারকারীর মালিকানাধীন কোনও ফাইল সরিয়ে ফেলছেন তখন এটি rm: remove write-protected regular empty file 'f1'?নিশ্চিতকরণের অনুরোধ প্রদর্শন করবে না ) এবং উপেক্ষা করে অ-বিদ্যমান ফাইল। সুতরাং উদাহরণস্বরূপ, একটি অস্তিত্বের ফাইলের নাম সহ, আপনার rm: cannot remove 'nonexistent': No such file or directoryত্রুটি হওয়া উচিত ।

আরো দেখুন:

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.