rm
পুনরাবৃত্তি শুধুমাত্র নীচের দিকে সঠিকভাবে কাজ করে?
rm -r x y
মুছে ফেলা হবে x
এবং y
তাদের ভিতরে থাকা সমস্ত কিছু (যদি তারা ডিরেক্টরি হয়) তবে তাদের পিতামাতা বা তাদের বাইরে কিছু নয়।
চলমান: sudo rm -R *.QTFS
বর্তমান ডিরেক্টরি এবং এর শিশুদের সমস্ত * .QTFS ফাইল মুছে ফেলবে, তাইনা?
নং এটা নামে সব ফাইল মুছে ফেলবে *.QTFS
, যাও recursively যে কোন ফাইল ভিতরে ডিরেক্টরি নামক *.QTFS
, এবং যারা ডিরেক্টরি নিজেদের। আপনি যদি অন্য মুছে ফেলার আচরণ চান তবে ব্যবহার করুন find -delete
।
বর্তমান ডিরেক্টরী হিসাবে দ্বারা প্রদর্শিত ls -lha
এছাড়াও রয়েছে .
এবং ..
একটি ভাল শব্দ অভাবের জন্য লিঙ্ক, কেন পুনরাবৃত্তির এই ঊর্ধ্বমুখী ডিরেক্টরি ট্রি অনুসরণ করে না? আরএম অ্যাপে কোনও কৃত্রিম সীমা রয়েছে, না .
এবং ..
বাস্তব জিনিসগুলি নয়?
এটি একটি কৃত্রিম সীমা rm
।
এটি আসলে এত কৃত্রিম নয়, যদিও এটি কখনও কাজ করতে পারে way যদি rm
পিতামাতৃত ..
লিঙ্কগুলি অনুসরণ করা হয় rm -r
তবে প্রত্যেকে সমস্ত ..
লিঙ্কের সমস্ত পথ অনুসরণ করে সিস্টেমে প্রতিটি ফাইল সরিয়ে ফেলবে /
। প্রতিটি ডিরেক্টরিতে থাকা এন্ট্রিগুলিকে rm
দেখে ..
এবং .
এটি লিখিত সামগ্রীটি তালিকাভুক্ত করে এবং স্পষ্টতই সে কারণে তাদের উপেক্ষা করে।
বাস্তবে আপনি এটি চেষ্টা করে দেখতে পারেন। চালান rm -r .
এবং বেশিরভাগ rm
বাস্তবায়ন কার্যকর করতে অস্বীকার করবে, স্পষ্টভাবে একটি ত্রুটির প্রতিবেদন করবে:
$ rm -r .
rm: refusing to remove ‘.’ or ‘..’ directory: skipping ‘.’
(এই বার্তাটি জিএনইউ থেকে এসেছেrm
; অন্যরাও একই রকম)। যখন এটি স্পষ্টত যুক্তি না দিয়ে স্পষ্টভাবে এই এন্ট্রিগুলির মুখোমুখি হয়, তখন এটি কেবল তাদের উপেক্ষা করে চালিয়ে যায়। সেই আচরণটি পসিক্সের দ্বারা প্রয়োজনীয় । জিএনইউ rm
এবং অনেক বিএসডি-তে, এটি fts_read
হায়ারার্কি-ট্র্যাভার্সাল ফাংশনগুলির পরিবার দ্বারা স্বয়ংক্রিয়ভাবে সরবরাহ করা হয় ।
বা .
এবং ..
বাস্তব জিনিস না?
.
এবং ..
হয় সাধারণত , বাস্তব ডিরেক্টরির এন্ট্রি যদিও যে ফাইলসিস্টেম-নির্দিষ্ট। এগুলি প্রায় সর্বদা উপস্থাপিত হবে যদিও এগুলি নির্বিশেষে সমস্ত ব্যবহারকারীর কোডের আসল এন্ট্রি। rm
পলাতক বা অবাঞ্ছিত পুনরাবৃত্তি ধরা বা আটকাতে সফটওয়্যারটির অনেকগুলি অংশ (কেবল নয় ) তাদের আচরণ বিশেষ করে তোলে।