ফোল্ডারে সমস্ত ফাইলের লাইনের সমষ্টি গণনা করা হচ্ছে


3

আমি একজন প্রোগ্রামার, এবং আমি আমার প্রকল্পের প্রতিটি ফাইল খুলতে এবং লাইনগুলি গণনা করতে খুব অলস, তবে আমি এখনও জানতে চাই যে সেখানে কতগুলি লাইন রয়েছে। মূলত, আমি একটি ডিরেক্টরিতে সমস্ত লাইন ব্রেকগুলির যোগফল খুঁজতে চাই, যার উপ-ডিরেক্টরি রয়েছে এবং কেবলমাত্র এটির .html, .js, .css, বা .php এর এক্সটেনশন রয়েছে। এছাড়াও, আমি উইন্ডোতে এটি কাজ করতে চাই! এবং এটি বিনামূল্যে করা উচিত

উত্তর:


3

সাইগউইন ইনস্টল করুন । নিশ্চিত করুন যে প্যাকেজগুলি findutils, coreutilsএবং dos2unixইনস্টল করা আছে।

এই আদেশটি চালান:

find . -type f -regextype posix-extended -regex '.*\.(html|js|css|php)' -print0 | wc -l --files0-from=- | tail -n 1

কমান্ডটি ইউনিক্স এবং ডস উভয়ই শেষ লাইনের সাথে ফাইলগুলি সঠিকভাবে প্রক্রিয়া করা উচিত। যদি এন্ডলাইনগুলি সম্পর্কিত কোনও সমস্যা দেখা দেয় তবে আপনি শেষ লাইনের অনুবাদ সহ নিম্নলিখিত রূপটি ব্যবহার করতে পারেন:

find . -type f -regextype posix-extended -regex '.*\.(html|js|css|php)' -exec cat {} + | dos2unix | wc -l

কমান্ডগুলি বর্তমান ডিরেক্টরিতে শুরু করে গণনা করা হবে। আপনি যদি কোনও ভিন্ন ডিরেক্টরি সরবরাহ করতে চান তবে .ঠিক পরে এর পরিবর্তে রাখুন find।


আমি সাইগউইন ইনস্টল করতে চাই না যাতে আমার কাছে কোডের কত লাইন আছে তা গণনা করতে পারি। এটি করার জন্য আরও "লাইটওয়েট" উপায় আছে?
— মার্কাসোফটওয়্যার

@ মারকাসফটওয়্যার: সম্পূর্ণ সাইগউইন ইনস্টল করার প্রয়োজন নেই। সম্ভবত cygwin1.dllএবং আপনার প্রয়োজনীয় সরঞ্জামগুলি যথেষ্ট হবে যদিও এ জাতীয় ম্যানুয়াল ইনস্টলেশন আরও জটিল হবে। রয়েছে MinGW যা Cygwin যেমন ইউনিক্স সামঞ্জস্য স্তর ব্যবহার করে না। এখানে পৃথক বাইনারি সহ ইনস্টলার বা প্যাকেজ রয়েছে । কমান্ড সিকোয়েন্সটি bashক্লাসিকের অনুরূপ বা অন্য কোনও শেলের জন্য উদ্দিষ্ট sh।
— পাবউক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.