The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

  $0 コマンド文字列
  $0 -6 コマンド文字列

   コマンド文字列で指定されたコマンドの実行時間を計測し、
   マイクロ秒単位または秒単位で表示する。

  commands | $0 cat
  commands | $0 -6 cat
    上記と同様。

オプション:

   -0 : コマンド文字列の標準出力を捨てる。
   -1 : 測定した時間を標準エラー出力ではなくて、標準出力に出力する。
   -6 : 測定した時間をマイクロ秒単位ではなくて、秒単位で表示する。
   -q : 標準エラー出力に、実行時間を出力する際に色を出さない。
   -m num : 反復回数の指定。 
   -t : 終了時の時刻も表示する。

   -^ str : 測定情報の先頭に付加する文字列の指定。
   -! : 出力をバッファに貯めない。

使用例:

   $0 perl -e 'sleep 1'
   $0 -16 -^ "Time Elapsed (sec) = " echo Hello! 
   $0 -16 -^ "\n" printf "abcde"

開発メモ:

   * ごく簡単なコマンドの演算時間は2ミリ秒前後である。
   * コマンドの実行に system でも qx でもこの値に大きな変わりは無かった。ただし systemが動いているときは $0 が Ctrl+CでもCtrl+\でも止まらない。
   * 5.001 でも 5.018 でも演算時間に変わりは見いだせなかった。