使用 sed 进行字符到字符替换

使用 sed 进行字符到字符替换

我正在尝试在 bash 中制作一个单字母替换解码器:我有一组字符形成替代字母表,例如

real alphabet -> ABCDE ...
my alphabet   -> DGHJK ...

我想要 sed (或其他工具,但我认为 sed 可以处理它)将“A”替换为“D”,将“B”替换为“G”等等。是否可以在不使用 sed 中的“-e”参数(并键入所有字母表)的情况下执行此类替换?

答案1

而不是sed使用tr

tr 'A-Z' 'DGHJK...' < input

答案2

尝试:

$ echo ABCDBAD | sed 'y/ABCD/DEFG/'
DEFGEDG

y/string1/string2/原因sed将所有出现的字符替换string1为 中的相应字符string2

相关内容