0

我需要使用 tr 命令来翻译 ROT13,(在字母表中移动 13 个字符)为大写和小写

这就是我想出的

tr "A-Za-z" "N-ZA-Mn-za-m"

然而,它现在还需要翻译标点符号。

我看到有人提到过

[A-Za-z0-9 _.,!"'/$]*

会帮助我,但老实说,我不知道如何将它添加到我的代码中。

我对linux完全陌生!

4

1 回答 1

0

这取决于您如何定义“rot13”。我相信这就足够了:

http://www.linuxjournal.com/article/2563

如果您阅读国际混淆 C 代码竞赛 ( ftp://ftp.uu.net./pub/ioccc/ ),您经常会看到部分提示是由称为 rot13 的方法编码的。rot13 是一个凯撒密码,即所有字母都移动了一些位置的密码。例如,a 变为 b,b 变为 c,...,y 变为 z,z 变为 a。在 rot13 中,每个字母移动 13 位。这是一个弱密码,要破译它,您可以再次使用 rot13。你也可以使用 tr 来读取文本:

tr a-zA-Z n-za-mN-ZA-M

还要注意,仅当字符串参数中有空格时才需要引号 (")。由于“tr”参数中没有任何空格,因此不需要引号。这两个语句在功能上相同:tr "A-Za-z" "N-ZA-Mn-za-m"==tr A-Za-z -ZA-Mn-za-m

于 2013-10-18T22:29:43.593 回答