私はこの回答を、私がインストールしたGNU timeで検討していますbrew
。
data.txt
hello
amigo
this line 3
and here we go 4
and 5 is here
BSD時間のコード
time eval $(echo sed $(for i in 1 2 3 5; do echo "-e ${i}p"; done) -n data.txt )
hello
amigo
this line 3
and 5 is her
real 0m0.008s
user 0m0.003s
sys 0m0.005s
GNU時間のコード
$ gtime eval $(echo sed $(for i in 1 2 3 5; do echo "-e ${i}p"; done) -n data.txt )
gtime: cannot run eval: No such file or directory
Command exited with non-zero status 127
0.00user 0.00system 0:00.00elapsed ?%CPU (0avgtext+0avgdata 1228800maxresident)k
0inputs+0outputs (0major+93minor)pagefaults 0swaps
引用符付き
gtime eval '$(echo gsed $(for i in 1 2 3 5; do echo "-e ${i}p"; done) -n data.txt )'
gtime: cannot run eval: No such file or directory
Command exited with non-zero status 127
0.00user 0.00system 0:00.00elapsed 50%CPU (0avgtext+0avgdata 1196032maxresident)k
7inputs+0outputs (0major+91minor)pagefaults 0swaps
Matthieuのコメントに基づいて、gtime
は評価ビンを探していますが、組み込みのbashコマンドです。コマンドwhich eval
は何も与えません。
GNU timeがevalを実行できないのはなぜですか?
GNU timeがインストールされているMac OSシステムはないのではないかと心配していますが、GNU time呼び出しはLinuxシステムでは正常に動作します(つまり、evalが正しく組み込まれているシェル組み込みの時間を計測できます)。奇妙な。
—
mjturner
問題は、gtime
—
マチューリーグラー
eval
がビンを探しているように見えるが、組み込みのbashコマンドであるということです。
@MatthieuRieglerはい、
—
レオレオポルトヘルツ준영
which eval
何も与えません。
@Masi何が
—
mjturner
type eval
あなたに与えますか?シェルは(echo $SHELL
)として何と定義されていますか?