Существует текст, затронутый ROT13, названным rot.txt
. ROT13 (вращаются 13 местами) заменяет букву буквами буквы 13 после него в алфавите. Как я пишу команду для просмотра фактического текста?
Я попробовал:
cat rot.txt | tr 'A-Za-z' 'N-ZA-Mn-za-m'
но никакой успех
Вот способ с примером
echo "hello world" | tr "$(echo -n {A..Z} {a..z} | tr -d ' ')" "$(echo -n {N..Z} {A..M} {n..z} {a..m} | tr -d ' ')"
Вывод:
uryyb jbeyq
Сделать функцию:
function rot13() {
cat | tr "$(echo -n {A..Z} {a..z} | tr -d ' ')" "$(echo -n {N..Z} {A..M} {n..z} {a..m} | tr -d ' ')"
}
Использование:
[ 113]Самый легкий способ дешифровать состоит в том, чтобы использовать ту же программу, используемую для шифрования теста; ROT13:
Смещение 13 позволяет шифрованию быть обратимым. Метод шифрования и дешифрования идентичен. Применение 2 последовательного шифрования (2 сдвига 13) направляется для нахождения оригинального текста.
Ссылка также упоминает, что числа могут быть зашифрованы путем смещения ASCII, 5 положений и знаки пунктуации могут быть зашифрованы путем смещения ASCII 47 положений.
Вы также можете добиться того же результата с помощью следующей части команды:
tr '[a-z][A-Z]' '[n-za-m][N-ZA-M]'
или
tr '[a-zA-Z]' '[n-za-mN-ZA-M]'
Лично мне этот синтаксис кажется намного проще.