bash を更新したところ、time time
更新前に正常に機能していたコマンドを使用できなくなりました。
の考え方time time cmd
は次のとおりです。1 つ目time
は bash 組み込み関数、2 つ目time
は/usr/bin/time
プログラムです。cmd
計時するプログラムです。
の使用法はtime time
、細かく印刷されたユーザー/システム/リアルタイムとページ フォールト統計の両方を確認するための短くて覚えやすい方法でした。
$ time time false
Command exited with non-zero status 1
0.00user 0.00system 0:00.01elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (1major+163minor)pagefaults 0swaps
real 0m0.035s
user 0m0.000s
sys 0m0.002s
最初の行は cmd の終了ステータス (ゼロ以外の場合)、2 番目は からのコンパクトな時間統計/usr/bin/time
、3 番目は/usr/bin/time
pagefault 統計による追加情報です。time
次に、より詳細なタイミング情報 (ポイントの後の 3 桁) を含むbash の 3 行があります。
質問: なぜ新しい bash は秒time
を /usr/bin/time として無視するのですか? 何が変更され、なぜ変更されたのですか?
古いスタイルの解析時間を返すように bash にパッチを当てるにはどうすればよいですか?
parse.y
バイソンファイルであるbashに変更があったと思います。ここで差分http://code.metager.de/source/diff/gnu/bash/parse.y?r2=%2Fgnu%2Fbash%2Fparse.y%40509a4430ae72aec10896713435e84f5b27675763&r1=%2Fgnu%2Fbash%2Fparse.y%4089a92869e56abad08c5c5c5c5