প্রতিটি ফাইলে কত লাইন থাকে।
wc
মূলত শব্দ গণনার জন্য ব্যবহার করুন , আমি বিশ্বাস করি, তবে এটি লাইন, শব্দ, অক্ষর, বাইট এবং দীর্ঘতম রেখার দৈর্ঘ্য করতে পারে। -l
বিকল্প বলা হয়েছে যে সব লাইন গণনা।
wc -l <filename>
এটি এতে রেখার সংখ্যা আউটপুট দেবে:
$ wc -l /dir/file.txt
32724 /dir/file.txt
আপনি wc
পাশাপাশি ডেটা পাইপ করতে পারেন :
$ cat /dir/file.txt | wc -l
32724
$ curl google.com --silent | wc -l
63
ডিরেক্টরিতে কত লাইন রয়েছে।
চেষ্টা করুন:
find . -name '*.pl' | xargs wc -l
অন্য একটি লাইনার:
( find ./ -name '*.pl' -print0 | xargs -0 cat ) | wc -l
বিটিডাব্লু, wc
কমান্ড লাইনের পরিবর্তে নতুন লাইন কোড গণনা করে। যখন ফাইলের শেষ লাইনটি নতুন লাইন কোডের সাথে শেষ হয় না, এটি গণনা করা হবে না।
আপনি গ্রেপ-সি ^ ব্যবহার করতে পারেন, পুরো উদাহরণ:
#this example prints line count for all found files
total=0
find /path -type f -name "*.php" | while read FILE; do
#you see use grep instead wc ! for properly counting
count=$(grep -c ^ < "$FILE")
echo "$FILE has $count lines"
let total=total+count #in bash, you can convert this for another shell
done
echo TOTAL LINES COUNTED: $total
মোট কত লাইন
নিশ্চিত না যে আমি আপনার অনুরোধটি সঠিকভাবে বুঝতে পেরেছি। উদাহরণস্বরূপ এটি প্রতিটি ফাইলের জন্য রেখার সংখ্যা দেখিয়ে নিম্নলিখিত বিন্যাসে ফলাফল দেয়:
# wc -l `find /path/to/directory/ -type f`
103 /dir/a.php
378 /dir/b/c.xml
132 /dir/d/e.xml
613 total
বিকল্পভাবে, নিম্নলিখিত কমান্ড থেকে ফাইল গণনা করে ফাইল ব্যতীত নতুন লাইন অক্ষরের মোট সংখ্যা নির্ধারণ কার্যকর হতে পারে:
# find /path/to/directory/ -type f -exec wc -l {} \; | awk '{total += $1} END{print total}'
613
সবচেয়ে বড় কথা, আমার এটি 'মানব পাঠযোগ্য বিন্যাসে' উদাহরণস্বরূপ দরকার। 12345678 এর চেয়ে 12,345,678
বাশের একটি প্রিন্টফ ফাংশন অন্তর্নির্মিত রয়েছে:
printf "%0.2f\n" $T
সর্বদা হিসাবে, এখানে অনেকগুলি ভিন্ন পদ্ধতি রয়েছে যা এখানে উল্লিখিত একই ফলাফল অর্জনের জন্য ব্যবহার করা যেতে পারে।