如何隐藏在 Linux shell 中键入的命令?

Mug*_*hil 14 command-line shell

有没有办法隐藏我在 shell 中输入的内容,这样终端就不会回显我的击键,同时仍然保留命令的输出?

例如,如果我运行ip addr show,屏幕上唯一的应该是该命令的输出——而不是我输入的“ip addr show”。

Ada*_*man 28

如果你想禁用你输入的命令的回显,试试这个:

stty -echo
Run Code Online (Sandbox Code Playgroud)

您可以使用以下命令重新启用 echo:

stty echo
Run Code Online (Sandbox Code Playgroud)

请注意,命令的输出将以稍微不同的方式显示,请参阅此示例会话:

$ pwd
/tmp
$ stty -echo
$ /tmp
Run Code Online (Sandbox Code Playgroud)

这是由于键入pwd, return, stty -echo, return, pwd, return 造成的。

  • 请注意,这可能会或可能不会起作用,具体取决于您的 shell,也可能取决于您在提示中放入的奇怪内容。该设置也适用于该终端中的所有内容;如果您运行全屏命令,它可能会重置为`stty +echo`。 (2认同)