কোনও ফোল্ডার এবং এর সাবফোল্ডারগুলিতে এক্সটেনশন ছাড়াই সমস্ত ফাইল সন্ধান এবং মুছুন


16

আমার প্রায় 500 টি সাব-ডাইরেক্টরি ছাড়াই একটি ফোল্ডার রয়েছে। এতে প্রচুর ট্র্যাশ পাওয়া যাবে এবং আমি এটি পরিষ্কার করতে চাই।

আমি চাই না এমন কিছু ফাইল টাইপ ইতিমধ্যে মুছে ফেলেছি যা এই কমান্ড সহ চিত্রগুলির মতো নয়:

find . -mindepth 1 -iname "*.jpg" -type f -delete

তবে আমি এখন সমস্ত এক্সটেনশন-কম ফাইল মুছতে চাই। "শপিং লিস্ট.টেক্সট" এর "শপিং লিস্ট" এর মতো ফাইল

আমি নিম্নলিখিত আদেশটি চেষ্টা করেছি কিন্তু এটি কার্যকর হয়নি:

find . -mindepth 1 ! -iname "*.*" -type f -delete

উত্তর:


20

এটা চেষ্টা কর:

find . -type f  ! -name "*.*"  -delete

যাইহোক, মনে রাখবেন, উপরে ইচ্ছা ডিলিট ফাইল যার নাম প্রান্ত একটি নেই ., উদাহরণস্বরূপ foo.। এগুলিও মুছতে, পরিবর্তে এটি ব্যবহার করুন:

find . -type f  ! -name "*.?*" -delete

দ্বিতীয় আদেশটি আমার পরবর্তী প্রশ্ন ছিল। অনেক ধন্যবাদ! আমি find . -type f ! -name "*?.*" -delete".trash" এর মতো ফাইলগুলি মুছে ফেলার জন্য টাইপ করতে পারি বা যা প্রয়োজন তা ছিল না। চিন্তা করবেন না - এটি আমার হোম ডিরেক্টরি ছিল না, তাই আমি কোনও কনফিগার ফাইল হারিয়ে ফেলিনি।
etsnyman

5
@etsnyman -deleteবিকল্প ছাড়াই প্রথমে কমান্ড পরীক্ষা করা ভাল !
রাদু রেডানু

@etnyman বেশ নয়, বিন্দু দিয়ে শুরু হওয়া ফাইলগুলি সরাতে, find . -type f -name ".*" -deleteআপনার শেষ মন্তব্যের একটিটি কোনও এক্সটেনশন ছাড়াই ফাইলগুলি মুছবে। আর রাদু কি বলল! প্রথম পরীক্ষা!
টার্ডন

@ রদুরেদানু আমি প্রথমে খালি ফাইল সহ ডামি ডিরেক্টরিতে এটি প্রথম পরীক্ষা করেছি ...
এটসনিম্যান

@terdon আপনার দ্বিতীয় আদেশে প্রশ্ন চিহ্নটির অর্থ কী?
অবিনাশ রাজ

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