bashの奇妙なEndOfString
文字列の文字にアクセスするインデックスは0はじまり。s="abc" に対して ${s:1:1} は、サブストリング"b"を切り出す。これはいい。${s:3:1} はなぜか 0x7f = DEL を出力する。
$ s="abc"; echo "${s:1:1}"
b$ s="abc"; echo "${s:3:1}" # これだけだと表示は空
$ s="abc"; echo " ${s:3:1} " # 両端にSPACEを入れる
^?$ s="abc"; echo " ${s:3:1} " | od -x
0000000 7f20 0a20
0000004$