/note/tech

全角英数字を半角英数字に置換するシェルスクリプト

最近何度か使う機会があったのでメモ。英数字だけでなく四則演算記号と全角空白、行末尾の空白も除去するようにした。

cat $SRC | \
sed -e 'y/abcdefghijklmnopqrstuvwxyz/abcdefghijklmnopqrstuvwxyz/' | \
sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' | \
sed -e 'y/0123456789/0123456789/' | \
sed -e 's/+/+/g' | \
sed -e 's/ー/-/g' | \
sed -e 's/*/*/g' | \
sed -e 's///\//g' | \
sed -e 's/:/:/g' | \
sed -e 's/ / /g' | \
sed -e 's/ \+$//g' | \
cat >$DIST

何故人は全角英数字を使ってしまうのか。