最近知った便利なコマンド tr
tr - translate or delete characters
tr str1 str2
str1をstr2に変換する
例)
$ echo "cat" | tr 'c' 'r'
rat
$ echo "Uryyb jbeyq" | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' 'NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm'
Hello world
$ echo "Uryyb jbeyq" | tr 'A-Z' 'N-ZA-M' | tr 'a-z' 'n-za-m'
Hello world
コマンドひとつで換字できるので便利
以上
おまけ
#!/bin/bash
# script to perform ROT13 substitution
raw_table='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
rot_table='NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm'
if [ $# -ne 1 ]; then
echo "Usage: $0 [string]"
exit 1
fi
echo $1 | tr "$raw_table" "$rot_table"