我想要做的是为 tr 编写一个参数,以反转 rot13 代码的文本。
我想做这个
tr 'A-Za-z' 'N-ZA-Mn-za-m'
只是这个
tr -r
并使用 -r 参数执行第一个命令的操作
答案1
使用包装该命令的 shell 函数tr
:
tr () {
if [[ $1 == "-r" ]]; then
shift
set -- '[A-Za-z]' '[N-ZA-Mn-za-m]' "$@"
fi
command tr "$@"
}
检查“常规” tr 是否有效:
$ echo "Hello World!" | tr 'aeiou' 'AEIOU'
HEllO WOrld!
现在,使用 rot13 选项
$ echo "Hello World!" | tr 'aeiou' 'AEIOU' | tr -r
URyyB JBeyq!
$ echo "Hello World!" | tr 'aeiou' 'AEIOU' | tr -r | tr -r
HEllO WOrld!