Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

【自習メモ】プログレスバー的な文字増減をする場合、先に全部生成してsedで弄ったほうが早い……こともある

timeコマンドはスクリプトの実行時間を計測する子です。
以前記事化した事もありましたね。

さて、前回の記事でやったプログレスバーの部分について
ちょっと前に読んだ本に「sedは十分高速だから極力sedでやれ」とか書いてあったような事を思い出し……
試しに計測してみました。

実際のところ

結論から書くと、やはり先に生成、sedで抽出……の方が早いみたいです

先に生成+都度都度sed

$ time __base=`yes "#"  | head -12 | tr -d "\r\n"`

real	0m0.015s
user	0m0.009s
sys	0m0.006s

$ time echo $__base | sed -e "s/\(#\{8\}\).*/\1/"
########

real	0m0.015s
user	0m0.002s
sys	0m0.003s

毎回生成版

$ time yes "#" | head -8  | tr -d "\r\n"
########
real	0m0.007s
user	0m0.007s
sys	0m0.006s