我正在尝试开发一个脚本来设置软件和一些防火墙规则。该脚本在新的 VPS 上运行,并以 root 用户身份通过 SSH 连接。
脚本中有两处似乎忽略了“-y”
第一项:
apt update && apt upgrade -y && apt autoremove -y && apt autoclean -y
导致出现此提示的原因:在软件包升级期间无需询问即可重新启动服务?我只想自动选择“是”。
第二项:
ufw allow 1635/udp
ufw allow ssh
ufw enable
导致出现此提示的原因:命令可能会中断现有的 ssh 连接。是否继续操作?我还想自动选择“是”。
任何帮助都将不胜感激。这 2 项目前阻止了它成为一个完全无人干预的安装过程。
答案1
解决了!
第一项
发现这是apt upgrade
导致 GUI 提示的原因。通过将其更新为以下内容解决了此问题:DEBIAN_FRONTEND=noninteractive apt upgrade -y
第二项
已通过更新解决ufw enable
:yes | ufw enable
答案2
$echo -e "\t Yes"
尝试在末尾添加:因为这应该会遍历到<Yes>
您的第一个问题的终端中。
或者
$echo "\t \r"
在同一个问题的末尾添加。
和
对于你的第二个问题,请尝试以下操作:
$ echo "y" | sudo ufw enable