当用户提供特定输入时退出的 Bash 脚本

当用户提供特定输入时退出的 Bash 脚本

我正在尝试编写一个脚本,向用户显示一个问题:“你无聊了吗?(1=是;2=否)”。该脚本应运行直到用户点击 2。我是 Bash 新手,到目前为止,我花了大约 6 个小时编写此脚本:

#!/bin/bash
echo "Are you boring yet ? No = 1 , Yes = 2"
read $1
if [[ $1 -eq 1 ]]
then
echo "Are you boring yet ? No = 1 , Yes = 2"
read $2
if [[ $2 != 2 ]]
then
break
fi
fi

但是无论我按 1 还是 2,关闭它的输出都是相同的。

对于如何正确编写脚本有什么想法吗?

答案1

添加一个 while 循环,您只需问一次问题。只要您一直按 1,它就会不断循环,直到按 2,然后break调用退出循环。此外,只需使用名称来分配变量,然后使用$name它来调用变量。我用作junk示例。

#!/bin/bash

while true
do
    echo "Are you bored yet? No = 1, Yes = 2"
    read junk
    if [[ $junk -eq 2 ]]; then
        break
    fi
done

相关内容