如何在Unix中使用链接翻译

时间:2014-02-17 05:49:41

标签: unix

我希望使用tr命令将单词“abcd”翻译成大写“ABCD”,然后将“ABCD”翻译成数字,例如1234.

我希望使用管道将两个翻译链接在一起(小写为大写,然后大写为1234),并将最终输出组合为更多。

我无法连结第二部分。

echo "abcd" | tr '[:lower:]' '[:upper:]' > file1

这里我不知道如何在同一个命令中添加第二个翻译。

1 个答案:

答案 0 :(得分:0)

您无法在单个tr命令中执行此操作;你可以在一个管道中完成:

echo "abcd" | tr '[:lower:]' '[:upper:]' | tr 'ABCD' '1234'

请注意,您的[:lower:][:upper:]符号的转换次数将超过abcdABCD。如果你想扩展数字的映射,那么A-I映射到1-9,这是可行的;什么映射到0

如果你想在一个命令中完成它,那么你可以写:

echo "abcdABCD" | tr 'abcdABCD' '12341234'

或者,略微缩写:

$ echo 'abecedenarian-DIABOLICALISM' | tr 'a-dA-D' '1-41-4'
12e3e4en1ri1n-4I12OLI31LISM
$