Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux终端-有人能破坏这个echo命令吗?_Linux_Bash - Fatal编程技术网

Linux终端-有人能破坏这个echo命令吗?

Linux终端-有人能破坏这个echo命令吗?,linux,bash,Linux,Bash,我目前正在尝试完成overthewire bandit等级。我被困在一个层面上,希望我解码一个被加密到ROT13的.txt文件。我在网上寻找答案,找到了一个有效的答案。我复制并粘贴到我的终端,然后继续。然而,我并不真正明白我刚才做了什么。如果有人能向我解释,代码将在下面。谢谢 echo "Enter text here" | tr '[A-Za-z]' '[N-ZA-Mn-za-m]' echo:将参数写入标准输出 tr:通过替换或删除选定字符,将标准输入复制到标准输出 |

我目前正在尝试完成overthewire bandit等级。我被困在一个层面上,希望我解码一个被加密到ROT13的.txt文件。我在网上寻找答案,找到了一个有效的答案。我复制并粘贴到我的终端,然后继续。然而,我并不真正明白我刚才做了什么。如果有人能向我解释,代码将在下面。谢谢

echo "Enter text here" | tr '[A-Za-z]' '[N-ZA-Mn-za-m]'

echo
:将参数写入标准输出
tr
:通过替换或删除选定字符,将标准输入复制到标准输出

|
将输出作为下一个命令的输入

tr'[A-Za-z]'[N-Za-Mn-Za-m]'
:tr的第一个参数描述输入模式。以小写和大写形式注册所有字符。第二个参数描述输出模式。在这种情况下,替换(音译)

“A”->“N”

“B”->“O”

“C”->“p”

…->

“L”->“Z”

在这里,我们到达了z,所以我们“回到‘A’”

“M”->“A”

“N”->“B”

…->

小写字符也是如此。我建议你试试:
echo“abcdefghijklmnopqrstuvwxyzabefghijklmnopqrstuvwxyz”| tr'[A-Za-z]'[N-Za-Mn-Za-m]
以清晰地查看模式。

尝试阅读
echo
tr
的手册条目。这将为您提供所需的洞察力。假设你知道
|
做什么!有帮助的链接[MAN1TR]((),其中既有SET1也有SET2。