bash拼写错误,不知道是什么错误

时间:2018-12-29 11:21:11

标签: linux bash

该函数应该检查我们使用的“ $ 1”属性是否在包含大量文件的目录“ MINIENTREGA_CONF”中。

function fichero_existe(){
  i=0
  for fichero in ${MINIENTREGA_CONF}; do
    if [ "$fichero" = "$1" ] ; then
      i=1
    fi
  done
  if [ "$i" -eq 0 ] ; then
    echo "minientrega.sh: Error, no se pudo realizar la entrega">&2
    echo "minientrega.sh+ no es accesible el fichero \" $1 \"">&2
    return 66
  fi
}

2 个答案:

答案 0 :(得分:0)

MINIENTREGA_CONF是您在问题中提到的目录还是包含目录名称的变量?

如果前者是真的

function fichero_existe(){
    if [[ ! -e "/path/to/MINIENTREGA_CONF/$1" ]]
    then
        echo "minientrega.sh: Error, no se pudo realizar la entrega">&2
        echo "minientrega.sh+ no es accesible el fichero \" $1 \"">&2
        return 66
    fi
}

检查文件是否不存在。

请注意使用绝对路径,因此从何处运行脚本都没有关系。

答案 1 :(得分:-1)

对于下一行,应为==

 if [ "$fichero" = "$1" ] ; then