ローマ字(英字)からカタカナ読みへ変換するBashワンライナー

ローマ字(英字)からカタカナ読みへ変換する

A → エー
B → ビー
C → シー
のようにローマ字からカタカナ読みへ変換するBashワンライナーを作ります。

今回使うのは文字を置き換えるsedコマンドを使います。コマンドを読むとなんとなくわかると思います。

sed -e's/A/エー/gi' -e's/B/ビー/gi' -e's/C/シー/gi'  test.txt

-e スクリプト

エクステンションコマンドはスクリプトを延長追加します。

s/置換前/置換後/

置換前を置換後に置き換える。デフォルトでは先頭のみ、全てを置換する場合は、gオプションを付ける「s/置換前/置換後/g」。大文字小文字を区別しない場合は、iオプションをつける「s/置換前/置換後/gi」。

-i

インプレイスコマンドでファイルの置き換える。つまり上書き。

完成したワンライナーコマンド

sed -i -e's/A/エー/gi' -e's/B/ビー/gi' -e's/C/シー/gi' -e's/D/デー/gi' -e's/E/イー/gi' -e's/F/エフ/gi' -e's/G/ジー/gi' -e's/H/エイチ/gi' -e's/I/アイ/gi' -e's/J/ジェー/gi' -e's/K/ケー/gi' -e's/L/エル/gi' -e's/M/ エム/gi' -e's/N/エヌ/gi' -e's/O/オー/gi' -e's/P/ピー/gi' -e's/Q/キュー/gi' -e's/R/アール/gi' -e's/S/エ ス/gi' -e's/T/ティー/gi' -e's/U/ユー/gi' -e's/V/ブイ/gi' -e's/W/ダブリュー/gi' -e's/X/エックス/gi' -e's/Y/ワイ/gi' -e's/Z/ゼット/gi' test.txt