我正在尝试创建一个 bash 脚本,该脚本将提示用户输入询问用户想要连接到哪个 vpn 隧道。 因此,例如......有 pvn1 和 vpn2 所以它需要是这样的: 我知道在当前状态下它是伪代码..
read -p "Connect to vpn1 or vpn2? (enter vpn1 or vpn2)"
if vpn1
then /path/to/vpn/cert
if vpn2
then /path/to/vpn/cert
我希望得到一些指导,因为我在网上唯一能找到的是“是/否”输入响应..但这些通常是[如果"is"则执行“此”..如果“否或其他”而不是“什么都不做或退出”...
这个例子对于我需要做的事情来说太简单了。我需要为“vpn1”运行一个精确的 bash 命令,为“vpn2”运行另一个精确的 bash 命令
感谢所有帮助:)
最佳答案
你需要给read
命令一个变量,然后比较它。
read -p "Connect to vpn1 or vpn2? (enter vpn1 or vpn2)" vpn
case "$vpn" in
vpn1) do stuff ;;
vpn2) do other stuff ;;
*) echo "Enter vpn1 or vpn2" ;;
esac
将 do stuff
和 do other stuff
替换为您在每种情况下要运行的实际命令。
关于linux - 带有用户输入的 Bash If 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45684828/