当将密码作为参数输入到 bash shell/命令提示符中时是否隐藏密码?

当将密码作为参数输入到 bash shell/命令提示符中时是否隐藏密码?

在此处输入图片描述当我使用 weechat 时,我注意到如果我在程序中执行这样的命令,/msg IdentServ identify <my-password>它实际上会在您输入密码时将其清空......见下图:

但是...当我在 Linux 或 Windows 中使用一个程序时,该程序要求您在终端、Cmd.exe 或 Powershell 中输入密码,通常将其作为命令行参数传递,它只会将密码留在那里,让每个人都能看到。

Windows 或 Linux 中有这样的功能吗?在超时之前按下向上键时是否也可以执行此操作,之后它不再以这种方式运行以再次重新运行相同的命令?

我知道sudoLinux 的 ssh 密钥之类的东西,它们确实可以解决问题,但除了 Windows 的 Powershell“安全字符串”之外,我并不真正了解其他任何东西。

答案1

通过您提供的详细信息,我不知道太多信息,但我认为问题标题本身已经说明了一切,并将回答以下内容:

当将密码作为参数输入到 bash shell/命令提示符中时是否隐藏密码?

作为一名 Linux 用户,我会回答这个问题bash shell。您可以编写一个提示输入密码的 shell 脚本,如下所示。

#!/bin/bash
echo -n Password:    # Prompt for entering password 
read -s password     # read password by suppressing it using -s option
echo
echo $password       # print password

-s在此处命令意味着suppress抑制输出流以显示任何内容。这样当您输入密码时,密码将不可见。

NOTE:它在 shell 脚本中运行,但是为了使其在 weechat 等应用程序中运行,您必须更改底层代码,或者最好编写一个在您第一次打开应用程序时执行此操作的 shell 脚本。

要了解有关此主题的更多信息,请关注

请随意添加更多详细信息。

相关内容