seq vs jot vs bash{..}

どれが一番早いんですかね? 適当なシェルスクリプト組んだ時にできれば一番早いヤツ使いたいわけです。

というわけで単純比較

ume@fifteen:~$ time echo `seq 1 10000000` > /dev/null

real    0m8.760s
user    0m6.972s
sys     0m1.487s
ume@fifteen:~$ time echo `jot 10000000 1` > /dev/null

real    0m16.704s
user    0m14.171s
sys     0m1.512s
ume@fifteen:~$ time echo {1..10000000} > /dev/null

real    0m18.089s
user    0m12.186s
sys     0m1.173s
ume@fifteen:~$


おや、bash{..}で連番作るのが一番遅いやんけ。。。これが一番早いのかと思ってたよ>< うちの環境のせいですかね???


jotやseqの結果をecho出力じゃなくて、区切り文字をスペースに変えたらどうなるんでしょうね。

ume@fifteen:~$ time seq -s " " 1 10000000 > /dev/null

real    0m0.309s
user    0m0.140s
sys     0m0.168s
ume@fifteen:~$ time jot -s " " 10000000 1 > /dev/null

real    0m6.543s
user    0m6.246s
sys     0m0.167s
ume@fifteen:~$

あれ、さらに早くなった・・・ なんでこういうことになるんでしょう???
seq優秀説?
ま、seqじゃ、bashのecho {a..z} 文字列順番出力みたいなのはできないのですがね。