আমি কীভাবে স্বয়ংক্রিয়ভাবে ব্যাশে কমান্ডগুলি সময় দিতে পারি?


14

মধ্যে tcsh, পরিবর্তনশীল আছে time:

   The time shell variable can be set to execute the time builtin command
   after the completion of any process that takes more than a given number
   of CPU seconds.

আমি এটি কিভাবে করব bash?

উত্তর:


14

বাশ উত্সটি পরিবর্তন না করে আপনি ঠিক একই প্রভাব অর্জন করতে পারবেন বলে আমি মনে করি না। তবে আপনি কাছাকাছি যেতে পারেন, আশা করছি আপনার জন্য যথেষ্ট কাছাকাছি।

অন-ইন্টিসিটিভ উপায়েSECONDS প্রাচীরের ঘড়ির সময় দেখানোর জন্য আপনি বাশের হ্যাকি পূর্ববর্তী হুক এবং পরিবর্তনশীল একত্রিত করতে পারেন । ভিল লৌরীকারীর কারণে এখানে একটি সাধারণ বাস্তবায়ন । ফাংশন timer_startএবং timer_stopকমান্ড আরম্ভ করার পূর্বে এবং অবিলম্বে পরবর্তী প্রম্পট প্রদর্শন করার আগে অবিলম্বে মৃত্যুদন্ড কার্যকর করা হয়।

function timer_start {
  timer=${timer:-$SECONDS}
}
function timer_stop {
  timer_show=$(($SECONDS - $timer))
  unset timer
}
trap 'timer_start' DEBUG
PROMPT_COMMAND=timer_stop
PS1='[last: ${timer_show}s][\w]$ '

timeপ্রতিটি কমান্ডের সম্পূর্ণ তথ্য পেতে , ডেনিস উইলিয়ামসনের কারণে এখানে একটি উপায় :

bind '"\C-j": "\C-atime {\C-e;}\C-m"'

আপনি যখন কমান্ড শুরু করার পরিবর্তে Ctrl+ Jটিপেন Enter, আপনি সময় তথ্য পাবেন। রিবাইন্ডিং Enter(অর্থাত্‍ Ctrl+ M) সুপারিশ করা হয় না কারণ পরিবর্তিত কমান্ডটি মাঝে মাঝে সিনথেটিকভাবে ভুল হয়ে যায়।

দেখুন বাশ প্রম্পটে শেষ কমান্ডের প্রাচীরের সময়টি কীভাবে রাখা যেতে পারে? এবং বাশ প্রম্পটে প্রতিটি কার্যকর করা কমান্ড এবং শো স্বয়ংক্রিয়ভাবে সময় নির্ধারণ করে? উপর স্ট্যাক ওভারফ্লো অন্যান্য পদ্ধতি জন্য (নোট তবে যে সবচেয়ে শুধুমাত্র অতিবাহিত বাস্তব সময় দিতে CPU- র সময় নয়)।

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