我正在编写一个bash脚本,应该做一些确认并安装软件。安装过程的第一步是要求我确认EULA并输入“是”。有没有办法从bash脚本中获得'yes'?
答案 0 :(得分:3)
命令yes
输出指定字符串的永不停止的流,如果未指定则输出y
。
$ yes | head y y y y y y y y y y $ yes yes | ./interactive-installer # something like this?
答案 1 :(得分:2)
有时你可以使用
echo "yes"|./interactive-installer
答案 2 :(得分:1)
Expect可能会有所帮助。我自己从未使用它,但据我所知,它允许您指定对特定提示的预编程响应。
答案 3 :(得分:0)
使用read
。
#!/bin/sh
echo -n "Confirm? (y/n):"
read confirm_val
if [[ "$confirm_val" == "y" ]] ; then
echo "Confirmed!"
else
echo "Not confirmed!"
fi
答案 4 :(得分:0)
#!/bin/sh
echo -n "Confirm me ? (yes/no):"
read choice
if [ "$choice" == "yes" ] ; then
echo "Confirmed!"
else
echo "Not confirmed!"
fi