আমি সবেমাত্র একটি বিভ্রান্তিকর ত্রুটি পেয়েছি:
rm: cannot remove `xxx/app/cache/prod': Directory not empty
যা নিম্নলিখিত আদেশের ফলে ঘটেছিল:
rm -rf $cache_dir/*
যেখানে $cache_dir
হিসাবে সংজ্ঞায়িত করা হয়xxx/app/cache
সুতরাং আমি এটি দেখতে চাই: দির rm
সমস্ত কিছু মুছে ফেলা হয়েছে cache/prod
, তারপরে এটি cache/prod
ডিরেক্টরি সরানোর চেষ্টা করার ঠিক আগে - অন্য প্রোগ্রামটির মধ্যে একটি ফাইল / ডিরেক্টরি তৈরি হয়েছিল যাতে এটি rm
ব্যর্থতার কারণ হয়ে দাঁড়ায়।
আমার ধারণা সঠিক?
rm -rf
থ্রেড নিরাপদ হওয়ার সাথে এর কোনও যোগসূত্র নেই: আপনি যদি একই ডিরেক্টরিটিতে একযোগে একাধিক বার চালনা করেন তবে ডিরেক্টরিটি মুছে ফেলা হবে। এটি rm -r
পারমাণবিক না হওয়ার বিষয়ে ।
rm
আমন্ত্রণ হিসাবে "থ্রেড" ধরে নিই , আমরা থ্রেড-সুরক্ষা সম্পর্কে বলতে পারি। তবে যাইহোক, এটি কোনও পরিবর্তন করে না
rm -r
পারমাণবিক নয়। আপনি যদি নিশ্চিত হতে চান যেrm -rf
চলমান অবস্থায় ডিরেক্টরিতে আর কোনও ফাইল তৈরি হয় না , আপনি প্রথমে এটির পুনরায় নামকরণ করতে পারেন, তারপরে নাম পরিবর্তন করা ডিরেক্টরিটি সরিয়ে ফেলুন।