ao-log

インフラ系ITエンジニアのメモ帳です。

シェルスクリプトでYYYYMMDD → YYYY/MM/DD

シェルスクリプトでYYYYMMDD → YYYY/MM/DD。簡単な内容ですが、即座に出来なかったのでメモとして残しておきます。

シェル変数

${var:n:m} でシェル変数 $var の n 番目から m 個の文字を取り出せるので、それを利用。

$ YYYYMMDD=20130418

$ echo ${YYYYMMDD:0:4}/${YYYYMMDD:4:2}/${YYYYMMDD:6:2}
2013/04/18
awk の substr
$ echo 20130418 | \
  awk '{print substr($1, 1, 4) "/" substr($1, 5, 2) "/" substr($1, 7, 2)}'
2013/04/18