我正在编写一个Linux Shell脚本,以自动化我在Ubuntu 11.04上的一些操作。
基本上,我正在编写一个Shell脚本来安装NGINX、MySQL和PHP,然后配置所有内容。我知道如何通过命令行完成所有操作。
然而,我不知道如何处理需要用户输入的部分。例如,我用apt-get安装某些东西时会要求确认,即(Y)es或(N)o。
我应该如何在Shell脚本中自动确认选项,也就是当询问时自动确认Yes或No呢?
我正在编写一个Linux Shell脚本,以自动化我在Ubuntu 11.04上的一些操作。
基本上,我正在编写一个Shell脚本来安装NGINX、MySQL和PHP,然后配置所有内容。我知道如何通过命令行完成所有操作。
然而,我不知道如何处理需要用户输入的部分。例如,我用apt-get安装某些东西时会要求确认,即(Y)es或(N)o。
我应该如何在Shell脚本中自动确认选项,也就是当询问时自动确认Yes或No呢?
yes | ./script
可以回答任何问题,并都是用字母 y
.
否则,编写一个脚本打印你想要的答案,例如:
echo N
echo Y
echo Y
printf "y\ny\nn\n" | ./your_script
或编写一个简单的脚本来分别打印每个答案,然后:./answer_script | ./the_script
- wormsparty-y
来调用 apt-get
。根据手册的说明:
-y, --yes, --assume-yes 自动回答是;假设对所有提示都回答“是”并以非交互方式运行。
debconf
数据库。如果Debconf从其数据库中找到答案,则不会询问。另请参见http://www.debian-administration.org/articles/394。试试期望,这可能是你在寻找的。