0

大文字と小文字の両方を ROT13 (アルファベットで 13 文字移動) に変換するには、tr コマンドを使用する必要があります。

これが私が思いついたものです

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

International Obfuscated C Code Contest ( ftp://ftp.uu.net./pub/ioccc/ ) を読むと、ヒントの一部が rot13 というメソッドによってコーディングされていることがよくあります。rot13 は Caesar cypher です。つまり、すべての文字がいくつかの場所にシフトされている暗号です。たとえば、a は b になり、b は c になり、...、y は z になり、z は a になります。rot13 では、各文字が 13 桁シフトされます。これは弱い暗号であり、解読するには rot13 を再度使用できます。tr を使用して、次のようにテキストを読み取ることもできます。

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

また、引用符 (") は、文字列引数に空白が含まれている場合にのみ必要であることに注意してください。「tr」引数には空白がないため、引用符は必要ありません。これらの 2 つのステートメントは機能的に同一: tr "A-Za-z" "N-ZA-Mn-za-m"==tr A-Za-z -ZA-Mn-za-m

于 2013-10-18T22:29:43.593 に答える