在 bash 脚本中出现“接近文件意外结尾的语法错误”

在 bash 脚本中出现“接近文件意外结尾的语法错误”

我正在制作一个脚本,当我给它一个像这样的 dd/mm/yyyy 的一天时,它会给我一个像这样的 jjj/yyyy 的一天,并且当您写得不正确时,我需要它出现错误,但我正在开始并且它不起作用:(

#! /bin/bash

#Primero debes ingresar el mes
echo "Ingresa el número de un mes del año"
read mes

#Condicional 
#Dependiendo si coloca bien $mes
if [ "$mes" -lt 12 -a "$mes" -gt 0 ]; then
echo "muy bien, sigamos."
    else
    if [ "$mes" -gt 12 -a "$mes" -lt 0 ]; then
    echo "Creo que eso ya no es un mes!";
exit
fi

当我运行它时,它显示“在文件意外结尾处出现语法错误”

答案1

你错过了一个fifor inside if

if [ "$mes" -lt 12 -a "$mes" -gt 0 ]; then
  echo "muy bien, sigamos."
else
  if [ "$mes" -gt 12 -a "$mes" -lt 0 ]; then
    echo "Creo que eso ya no es un mes!"
    # Missed fi here
  fi
  exit
fi

答案2

else if声明中,你需要这样写:

elfi [con]; then echo "statement"

相关内容