1

我正在尝试写一个像这样的表达式--->如果[ $condition1 ] && [ $condition2 ]在 bash 中,但我总是遇到同样的错误

syntax error near unexpected token `elif'
./leer.sh: line 25: `elif [[ "$($(date +%Y) -eq $ano)"  && "$($(date +%m) -lt $mes)" ]]'

那部分代码是:

elif [[ $($(date +%Y) -eq $year)  && $($(date +%m) -lt $month) ]]
then
echo "Well done";
4

1 回答 1

1

这里有几件事是错误的:

  • 你的情况不是从开始,if而是从elif
  • 你错过了决赛fi
  • 您尝试使用第二个执行逻辑表达式$(...)

你尝试这样做吗?

#!/bin/bash

year=2013
month=11

if [[ $(date +%Y) -eq $year && $(date +%m) -lt $month ]]; then
  echo "Well done"
fi
于 2013-10-19T09:35:48.890 回答