我需要使用tr命令翻译ROT13,(在字母表中移动13个字符)大写和小写
这就是我的想法
tr "A-Za-z" "N-ZA-Mn-za-m"
但是现在还需要翻译标点字符。
我见过有人提到
[A-Za-z0-9 _.,!"'/$]*
会帮助我,但老实说,我不知道如何将其添加到我的代码中。
我是linux新手!
答案 0 :(得分:0)
这取决于你如何定义“rot13”。我相信这已经足够了:
http://www.linuxjournal.com/article/2563
如果您阅读国际混淆C代码竞赛 (ftp://ftp.uu.net./pub/ioccc/),你经常看到那部分内容 提示由一个名为rot13的方法编码。 rot13是凯撒的密码, 即一个密码,其中所有字母都移动了一些位置。 例如,a变为b,b变为c,...,y变为z,z变为 一个。在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