首页 > 解决方案 > 为什么 Nyr OpenVPN 安装脚本需要“read -N 999999 -t 0.001”?

问题描述

Nyr /openvpn-install openvpn-install.sh脚本有多个用户输入提示。我正在尝试通过在我的输入中输入管道以非交互方式运行脚本,如下所示:

echo -e "1\nclientname" | sudo bash ./openvpn-install.sh

这会导致无数这样的错误:

: invalid selection.
: invalid selection.
: invalid selection.

这些错误是由脚本中的以下代码引起的:

# Discard stdin. Needed when running from an one-liner which includes a newline
read -N 999999 -t 0.001

当我运行包含换行符的单行命令时(如上所示),在我注释掉该read -N 999999 -t 0.001行后它似乎工作正常。所以我不确定为什么这条线是必要的。我会通过注释掉该行来破坏脚本的任何部分吗?

标签: inputpipenewlineopenvpn

解决方案


推荐阅读