書式を設定してメッセージを表示する

printfは文字列や数値の書式を整えて表示する
書式の指定方法はC言語のprintf関数と似ている

#!/bin/sh
#printf.sh

printf '1: <%5d> <%05d> <%-5d> \n' 123 123 123
printf '2: <%5.2f> <%05.f> <%.3e>\n' 1.234 1.234 1.234
printf '3: <%s> <%-10s> <%.5s>\n' 'hello' 'hello' 'hello'
printf '4: miles\ttaway\n'
printf '5: BEEP!\a\n'

i=0
while [ $i -le 10 ]; do
    printf '\rProcessing %2d/10...' $i
    i=`expr $i + 1`
    sleep 1
done
printf 'done\n'
$ ./printf.sh 
1: <  123> <00123> <123  > 
2: < 1.23> <00001> <1.234e+00>
3: <hello> <hello     > <hello>
4: miles        taway
5: BEEP!
Processing 10/10...done