如何在终端输入时显示实际密码。不是什么都没有,也不是星号,而是实际的字符

如何在终端输入时显示实际密码。不是什么都没有,也不是星号,而是实际的字符

我有一些残疾,其中之一就是手指颤抖。我见过通过打开星号的方法pwdfeedback,但这对我来说还不够,因为我有时按下键之间的脊,并且我不知道我实际键入的是哪一个。

我安装了 Linux 发行版的计算机几乎总是处于气隙状态,并且不包含与安全相关的数据。我实际上只用它来编写固件并将其上传到我的家庭工作室中的 Arduino 板。 (它只有在我更新库时才会获得网络连接,它甚至没有 wifi 卡,我使用 USB 网络共享)。有人可以帮忙吗?

答案1

明确使用“sudo -S”的目的是什么?

我使用以下内容创建了一个脚本:

#!/bin/bash

for arg in "$@"; do
    if [ "$arg" == "$1" ]; then
        printf "password\n" | sudo -S $arg
    else
        sudo $arg
    fi
done

然后跑了

sudo chmod 555 scriptname
sudo cp scriptname /usr/local/bin

从那里,您可以在任何目录中运行脚本,只需输入脚本名称并向其传递参数/命令即可

scriptname "command 1" "command 2" "command 3"

用引号将命令引起来,因此它是一个参数,但如果命令由于 shell 扩展而也包含引号,则可能需要小心。到目前为止,用单引号替换命令中的引号对我来说一直有效,但我不确定在所有情况下,这可能取决于您使用的 shell。或者,让您的脚本包含

#!/bin/bash

printf "password\n"

然后像这样调用脚本

scriptname | sudo -S [command]

相关内容