【发布时间】:2017-03-08 22:36:38
【问题描述】:
我想知道如何处理在脚本中调用命令后出现的提示。
即我想调用命令
sudo ./asadmin change-admin-password
但这要求我指定用户名并按 Enter,然后是旧密码并按 Enter,然后按两次新密码。
我可以在 bash 脚本中处理这个问题吗?
【问题讨论】:
-
这取决于
change-admin-password是从标准输入读取还是直接从终端读取。
我想知道如何处理在脚本中调用命令后出现的提示。
即我想调用命令
sudo ./asadmin change-admin-password
但这要求我指定用户名并按 Enter,然后是旧密码并按 Enter,然后按两次新密码。
我可以在 bash 脚本中处理这个问题吗?
【问题讨论】:
change-admin-password是从标准输入读取还是直接从终端读取。
如果脚本从标准输入读取,您可以简单地将必要的数据通过管道传输到脚本。
printf '%s\n' "username" "password" "password" | sudo change-admin-password
但是,如果脚本试图直接从终端读取项目,这将失败(这似乎很可能,至少在密码的情况下)。
【讨论】: