আমি কীভাবে সমস্ত সাবফোল্ডারগুলিতে একটি নির্দিষ্ট আকারের চেয়ে ছোট সমস্ত ফাইল মুছব?


88

আমার কাছে একটি ছোট ছোট টিআইএফ ফাইল (160 কেবি এরও কম) ফাইলযুক্ত অনেকগুলি সাব-ফোল্ডার রয়েছে যা বড় পিডিএফ ফাইলগুলিতে একত্রে একসাথে কিছু বড় মাল্টি-পেজ টিফ ফাইল যুক্ত করা হয়েছে।

আমি বড় ফাইল (টিফ বা পিডিএফ) না মুছে এবং ডিরেক্টরি কাঠামো ধরে না রেখে সমস্ত ছোট টিআইএফ ফাইল মুছতে চাই delete কমান্ড-লাইনটি ব্যবহার করে আমি লিনাক্সে এটি সম্পর্কে কীভাবে যেতে পারি?

উত্তর:


155
find . -name "*.tif" -type 'f' -size -160k -delete

-deleteসঠিক ফাইল পাওয়া গেছে তা যাচাই করতে প্রথমে কমান্ডটি চালান ।

-আগে নোট করুন 160k। ঠিক এর 160kঅর্থ হ'ল 160 কিলোবাইট। -160kমানে 160 কিলোবাইটের চেয়ে ছোট smaller +160kমানে 160 কিলোবাইটের চেয়ে বড়।

-type 'f'বাহিনী ফাইল শুধুমাত্র আইন কমান্ড ও ডিরেক্টরিগুলি লাফালাফি। প্যাটার্নের সাথে মেলে এমন নামের সাথে ফোল্ডার থাকলে এই ত্রুটিগুলি এড়াতে পারে *.tif।

আপনি (160 কিলোবাইট পরিবর্তে 160 বাইটে হিসাবে) বাইটে আকার ফিল্টার করতে চান তাহলে আপনি এটি এমন একটি লেখার জন্য আছে: 160c। আপনি কেবল লিখলে 160এটি 160 * 512 বাইট হিসাবে ব্যাখ্যা করা হবে। এটি পসিক্সের দ্বারা একটি অদ্ভুত প্রয়োজনীয়তা। আরও বিশদের জন্য এখানে পড়ুন: https://unix.stackexchange.com/questions/259208/purpose-of-find-commands-default-size-unit-512-bytes


উবুন্টু ম্যান পৃষ্ঠাতে এটি উল্লেখ করা যায় বলে মনে হয়। "টেস্টস" বিভাগের ঠিক নীচে: সংখ্যাযুক্ত আর্গুমেন্টগুলি n এর চেয়ে বড়, + এন এর চেয়ে কম এন, এন এর জন্য n হিসাবে নির্দিষ্ট করা যেতে পারে exactly
— jdg

1
ধন্যবাদ। তথ্যটি ম্যানপেজে অন্য কোথাও থাকতে পারে তা আমার কাছে ঘটেনি।
— লেসমানা

এটি দুর্দান্ত যে এই কমান্ডটিও পুনরাবৃত্তভাবে কাজ করে। আমার ব্যবহারের ক্ষেত্রে 12 কেবি এর অধীনে .txt ফাইলগুলি মুছে ফেলা হবে।
— সূর্য

সুডোর দরকার নেই?
— জিন-ফ্রান্সোইস গাগনন

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