我编写了一个 shell 脚本,该脚本依次调用另一个脚本,但第二个脚本提示输入密码。我想提供密码并通过提示而不通知用户。
这是我的脚本:
su - s3 -c "su.sh"
我尝试过:
su - s3 -c "echo pass | su.sh"
但我收到一个错误:
standard in must be a tty
更新:
命令的屏幕截图。
我也累了:
su - s3 -c "echo mypass|sudo -S su.sh"
但出现另一个错误:
sudo: sorry, you must have a tty to run sudo
su.sh 命令:
if [ ! -n "$IS_WINDOWS" ]
then
/bin/su root -c "...."
fi
答案1
答案2
您可以使用预计程序在询问密码时提供响应。请注意,这也存在硬编码密码的安全问题,通常最好设置 sudo 规则来无密码执行命令。