আপনি সবকিছু ঠিকঠাক করছেন। এটি '*' যা আপনাকে একটি সমস্যা দেয় (শেল এটির পরিবর্তে ফাইলের তালিকায় প্রসারিত করছে find
)। সঠিক বাক্য গঠনটি হতে পারে:
cd <your_directory>; find . -type f | xargs rm -f
find <your_directory> -type f | xargs rm -f
(পরবর্তীকালে এটি কিছুটা কম দক্ষ কারণ এটি দীর্ঘ নামগুলি পাস করবে xargs
তবে আপনি খুব কমই লক্ষ্য করবেন :-))
বিকল্পভাবে, আপনি আপনার '*' এড়াতে পারবেন (তবে সেই ক্ষেত্রে এটি "।" এবং ".." অপসারণের চেষ্টাও করবে; এটি কোনও বড় কথা নয় - আপনি কেবল একটি সামান্য সতর্কতা পাবেন :-)):
find . -name '*' | xargs rm -f
find . -name "*" | xargs rm -f
find . -name \* | xargs rm -f
যদি আপনার ফাইলের নামগুলিতে স্পেস থাকে তবে এটি ব্যবহার করুন:
find . -type f -print0 | xargs -0 rm -f