技术解析

shell 怎么处理程序的对话
0
2021-07-12 02:00:55
idczone

!/bin/bash

apt-get install atomiadns-powerdns-database

问题来了 会揭示用户确认安装
输入y后会提示用户设置mysql root密码
输入后会提示再输入一遍

dpkg -i pdns-static_3.0-rc1-1_amd64.deb
会询问用户配置文件模式

这些都怎么处理啊


…… 你是想问怎么bash编程?

echo ...

如果只是回答 yes no 的,很多命令有参数可以默认接受 yes,或者用 yes 命令,比如 yes | apt-get ....
比较复杂的,比如输入密码,通过管道也办不到,这种情况下可以用 expect 写一些脚本进行交互

dpkg 有个啥配置工具,可以直接配置字符界面UI下的配置项目和预设值,然后就可以静默的进行apt install了。
具体啥我忘了,你搜搜吧

想处理自动输入?
看下 expect,简单点的用管道也行

首先…我记得有apt-get install -y

通过谷歌,我找到了如下解决方案:
http://stackoverflow.com/questions/7739645/install-mysql-on-ubuntu-without-password-prompt
http://askubuntu.com/questions/104899/make-apt-get-or-aptitude-run-with-y-but-not-prompt-for-replacement-of-configu

expect

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服