0

这里是菜鸟!这是一个非常简单的。我正在尝试编写一个要求用户输入的脚本。然后读取输入并用它做一些事情。但我首先要确保提供输入。

例子:

echo "Please provide input1:"
read Input1
echo "Please provide input2:"
read Input2

if [ -z "$Input1" ]
echo "You did not provide input1"
exit
else if [ -z "$Input2" ]
echo "You did not provide input2"
exit 
fi  

但是,上述方法不起作用。有没有办法让它看起来更具可读性?有没有更好更简单的方法?

4

1 回答 1

1

你不想elifelse if你错过了强制性then关键字:https ://www.gnu.org/software/bash/manual/bashref.html#Conditional-Constructs

read -p "Please provide input1: " Input1
read -p "Please provide input2: " Input2

if [ -z "$Input1" ]; then
    echo "You did not provide input1"
    exit
elif [ -z "$Input2" ]; then
    echo "You did not provide input2"
    exit 
fi  

如果您想提供默认值而不是退出,则可以执行以下操作:

read -p "Please provide input1: " Input1
read -p "Please provide input2: " Input2
: ${Input1:=first default value}
: ${Input2:=second default value}
echo "Input1: $Input1"
echo "Input2: $Input2"
于 2014-10-30T00:51:20.343 回答