[bash]シェルスクリプトで西暦和暦変換を行う
履歴書書いたりするときに「あれー、2000年って平成何年だっけ?」とか、100年前って和暦で言うところの何年なんだ?と「ふ」とした疑問がわいたりすることがあるでしょう。
そんなあなたに、wareki.shを作りました。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
LANG=ja_JP.utf8
case $1 in
[0-9]*) date +%Ec --date=$1' years ago'|cut -b 1-22 \
| sed -e "s/年[0-1][0-9]月[0-3][0-9]日/年/g;s/$/\t西暦`LANG=C date +%Y --date=$1\ years\ ago`年/g" \
| sed s/年\ [1-3]/年'\t'/g ;;
[[:alpha:]]) echo "USAGE $0 1";;
esac
----------------------------------------------------------------------------------------------------------------------------------------------------------------
最初に端末を日本語UTF-8環境にしていますが、EUC-JPな環境の人は、ここを書き換えてください。また、和暦の右側に西暦を表示することで、和暦と西暦の対応が見やすくなっています。
使い方はいたって簡単、wareki.shのあとに、引数として正の整数を与えてやってください。今年の値を出す場合は、0を与えます。たとえば・・・
$ wareki.sh 10
平成10年 西暦1998年
$ wareki.sh 100
明治41年 西暦1908年
とまあ、こんなあんばいです。なお、CentOS4.xでは和暦は明治35年以降が表示されます。今年から100年前までの一覧表を出すには
$ for i in `echo {0..100}`; do ~/bin/wareki.sh $i; done
これでOKです。
ね、簡単でしょ?
そんなあなたに、wareki.shを作りました。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/sh
LANG=ja_JP.utf8
case $1 in
[0-9]*) date +%Ec --date=$1' years ago'|cut -b 1-22 \
| sed -e "s/年[0-1][0-9]月[0-3][0-9]日/年/g;s/$/\t西暦`LANG=C date +%Y --date=$1\ years\ ago`年/g" \
| sed s/年\ [1-3]/年'\t'/g ;;
[[:alpha:]]) echo "USAGE $0 1";;
esac
----------------------------------------------------------------------------------------------------------------------------------------------------------------
最初に端末を日本語UTF-8環境にしていますが、EUC-JPな環境の人は、ここを書き換えてください。また、和暦の右側に西暦を表示することで、和暦と西暦の対応が見やすくなっています。
使い方はいたって簡単、wareki.shのあとに、引数として正の整数を与えてやってください。今年の値を出す場合は、0を与えます。たとえば・・・
$ wareki.sh 10
平成10年 西暦1998年
$ wareki.sh 100
明治41年 西暦1908年
とまあ、こんなあんばいです。なお、CentOS4.xでは和暦は明治35年以降が表示されます。今年から100年前までの一覧表を出すには
$ for i in `echo {0..100}`; do ~/bin/wareki.sh $i; done
これでOKです。
ね、簡単でしょ?
トラックバック(0)
このブログ記事を参照しているブログ一覧: [bash]シェルスクリプトで西暦和暦変換を行う
このブログ記事に対するトラックバックURL: http://www.blogcube.info/cgi-bin/mt-tb.cgi/131
