উত্তর:
যোগ time
কমান্ড আপনি পরিমাপ করতে চান আগে। উদাহরণস্বরূপ: time ls
।
ফলাফলটি দেখতে পাবেন:
real 0m0.606s
user 0m0.000s
sys 0m0.002s
উপর ব্যাখ্যা real
, user
এবং sys
(থেকে man time
):
real
: প্রক্রিয়াটি ব্যবহৃত সেকেন্ডের মধ্যে সময় কাটানো বাস্তব (প্রাচীরের ঘড়ি) সময়।user
: প্রক্রিয়াটি সরাসরি (ব্যবহারকারী মোডে) সেকেন্ডে ব্যবহৃত সিপিইউ-সেকেন্ডের মোট সংখ্যা।sys
: প্রক্রিয়াটির পক্ষ থেকে ব্যবস্থার দ্বারা ব্যবহৃত মোট সিপিইউ-সেকেন্ডের সংখ্যা (কর্নেল মোডে), সেকেন্ডে।sudo apt-get install time
যদি এমন শেল ব্যবহার করছেন যেখানে time
বিল্টিন নেই।
time
বিল্টিন থেকে প্রাপ্ত আউটপুট , তবে man time
এটি কার্যকর হবে (যেমন /usr/bin/time
, time
প্যাকেজ থেকে ) এবং এর আউটপুটটি অন্যরকম দেখায়। এছাড়াও বাশে, আপনি help time
বিল্টিনের সাহায্যে দৌড়াতে পারেন।
লাইন বাই লাইন ডেল্টা পরিমাপের জন্য, জ্ঞোমন চেষ্টা করুন ।
এটি একটি কমান্ড লাইন ইউটিলিটি, কিছুটা মুর্টিলের টিএস-এর মতো, অন্য কমান্ডের স্ট্যান্ডার্ড আউটপুটে টাইমস্ট্যাম্প তথ্য প্রিপেন্ড করতে। দীর্ঘ-চলমান প্রক্রিয়াগুলির জন্য দরকারী যেখানে আপনি এত দীর্ঘ সময় নিয়ে যাচ্ছেন তার একটি recordতিহাসিক রেকর্ড চাই।
জ্ঞোমনকে কোনও কিছুর পাইপ দেওয়া প্রতিটি লাইনের জন্য একটি টাইমস্ট্যাম্প তৈরি করে, এটি নির্দেশ করে যে সেই রেখাটি বাফারের শেষ লাইনটি কত দীর্ঘ ছিল - এটি পরবর্তী লাইনটি প্রদর্শিত হতে কতক্ষণ সময় নিয়েছিল। ডিফল্টরূপে, জ্ঞোমন প্রতিটি লাইনের মধ্যবর্তী সময় সেকেন্ডে প্রদর্শন করবে তবে তা কনফিগারযোগ্য।
sudo npm i gnomon -g
থাকলে এটি ইনস্টল করতে পারেন npm
। "Progress r" (একই লাইনে থাকা) ব্যবহার করে "অগ্রগতি" রেখাগুলির বিরুদ্ধে এটি কতটা ভাল তা নিশ্চিত নয়: সে ক্ষেত্রে আমি এটিকে পৃথক নয়, একটি দীর্ঘ লাইন হিসাবে গণনা করতে চাই।
আপনি ব্যবহার করতে পারেন time
:
time ls -R
date +"%T" && cp -r ./file /destination/folder/here && date +"%T"
টার্মিনালে এই কমান্ডটি চালানো আপনাকে কোনও ফাইল অনুলিপি করার জন্য মোট সময় দেয়
find
কমান্ড - 2>/dev/null
পুনর্নির্দেশ ছাড়াই - প্রচুর Permission denied
বার্তা দেয় । যাইহোক, 2>/dev/null
এই কমান্ডে যুক্ত করার ফলে সেই কমান্ডের time
অংশটি ভেঙে যায় । নিম্নলিখিতটি একটি ভাল আপস সরবরাহ করে START="$(date +"%s")" && find 2>/dev/null / -path /mnt -prune -o -name "*libname-server-2.a*" -print; END="$(date +"%s")"; TIME="$((END - START))"; printf 'find command took %s sec\n' "$TIME"
:, (যেমন) /usr/lib/libname-server-2.a find command took 3 sec
একমাত্র আউটপুট হিসাবে দেওয়া।
time sudo find / -path /mnt -prune -o -name "*libname-server-2.a*" -print
(যেমন, হিসাবে sudo
) - এই অসংখ্য Permission denied
সতর্কতা এড়ানো ।
আমার অ্যাপ্লিকেশন বুটিংয়ের মতো কোনও ক্রিয়াকলাপের জন্য এটি কতক্ষণ সময় নেয় তা গণনা করতে মাঝে মাঝে নিজেকে স্টপওয়াচের প্রয়োজন মনে করি, সেক্ষেত্রে এখানে অনেকগুলি সমাধান কার্যকর নয়।
এই জন্য আমি sw ব্যবহার করতে চাই ।
wget -q -O - http://git.io/sinister | sh -s -- -u https://raw.githubusercontent.com/coryfklein/sw/master/sw
sw
- start a stopwatch from 0, save start time in ~/.sw
sw [-r|--resume]
- start a stopwatch from the last saved start time (or current time if no last saved start time exists)
- "-r" stands for --resume
time -v command
-v
আরও তথ্য দেয়
real
,user
এবংsys
বার যে এই কমান্ড আয় হয়?