外部コマンドは遅い。できるだけbuilt-inコマンドを使おうって話。 シェルでよくあるんだけど、ある区切りの○番目を取ってきたい、っていう場面で foo="aaaa,bbbb,cccc" bar=`echo $foo | awk -F, '{print $2}'` ってやる時がある。 けど、これ、むちゃくちゃ無駄。一回しか実行されないなら大したボトルネックにはならないが、ループの中で使うと酷い事になりがち。 awkの場合 #!/bin/sh typeset -i i=0 while (( i < 10 )) do echo "aaaa,bbbb,cccc" | awk -F, '{print $2}' >/dev/null i=$(( i + 1 )) done $ time ./awkTest.sh real 0m0.129s user 0m0.031s sys 0m0.098s re