-1

我有这样的条件:

if [ "$day" == "1" ]
then
    echo "First day."
fi

我想添加一个额外的条件,以便如果其中一个为真,它将打印“第一天”,例如:

IF $day IS 1 OR $a IS 1
THEN
    "First day."
FI

这如何在 BASH 中完成?

4

3 回答 3

3

保持 POSIX 兼容性,有两种选择:

if [ "$day" = "1" ] || [ "$a" = "1" ]; then ... fi

if [ "$day" = "1" -o "$a" = "1" ]; then ... fi

在 bash 中,有两个附加选项:

if [[ $day = 1 || $a = 1 ]]; then ... fi

if (( day == 1 || a == 1 )); then ... fi
于 2012-10-02T01:36:07.177 回答
1

if [ "$day" == "1" ] || [ "$a" == "1" ]; then echo "First day."; fi

或者

if [ "$day" == "1" ] || [ “$a" == "1" ]
then
    echo "First day."
fi
于 2012-10-02T01:31:39.110 回答
1

使用-o(逻辑或):

if [ "$day" == "1" -o "$a" == "1" ]
then
    echo "First day."
fi
于 2012-10-02T01:33:06.413 回答