这是我第一次发生在我使用su命令的地方,它实际上在终端上显示密码并且不会隐藏。这是我的代码片段:
sshpass -p "password" ssh -q username@74.11.11.11 "su -lc 'mkdir temp/'"
代码说明:我正在访问远程服务器并尝试在该服务器上创建一个文件夹。这样做我必须使用su命令,它会提示我输入密码。当我输入密码时,它会显示并且不会保持隐藏状态。我该如何解决这个问题?
答案 0 :(得分:1)
解决方案是分配一个伪TTY(使用-t
上的ssh
选项):
sshpass -p "password" ssh -t -q username@74.11.11.11 "su -lc 'mkdir temp/'"
没有这个,就没有"终端"在此上下文中,su
无法禁用密码的回显。