bash - Shell脚本,如何在没有用户干预的情况下输入用户的输入
问题描述
所以我的想法是制作一个创建用户的shell脚本。例如,在命令之后:flask fab create-admin
被调用它会要求一些输入:用户名(用户输入用户名,点击输入)用户名字(用户输入名字,点击输入)密码(用户输入名字,点击输入)
我想在文件中定义这些输入,所以当调用命令时,输入将自动提供,无需用户干预。
如何在 shell 脚本中实现这一点?谢谢!
解决方案
我不知道flask
,但如果需要按用户名、名字、密码的顺序输入;你可以使用 heredocs 来自动化它。
# /bin/bash
source password.txt # a file that has the content of:
# username=user
# firstname=Ivan
# password=123
flask fab create-admin <<-EOF
${username}
${firstname}
${password}
EOF
exit 0
但是,以纯文本形式存储密码通常是个坏主意。read
只要脚本正在运行,您就可以使用一次请求用户输入并多次重复使用它。
read -sp "Password? " password
echo $password
推荐阅读
- tensorflow - 如何使用批量训练模型来预测单个输入?
- r - 在 R 中将第 1 列和第 3 列中小于零的元素设置为零
- javascript - 识别表单中的特定按钮
- c++ - 如何编写对转发的引用元组进行操作的 constexpr 函数?
- javascript - 如何添加具有动态形式的单选按钮?
- javascript - Chrome 屏幕键盘在移动设备页面底部阻止内容
- python-3.x - 在 python 中工作时,如何修复 pandas lib 中的错误?
- python - 通过映射包含另一列中字符串值子集的字典来创建数据框列。作为它的关键
- c++ - C++ Windows DLL:不同函数中的异常处理
- reactjs - 如何使用 Jest 和 Enzyme 测试 React 的外部点击事件功能