问题是回购创建脚本

时间:2016-08-12 09:51:16

标签: bash shell

我面临以下脚本的问题。语法错误:无效的算术运算符(错误标记为“.repo”)。脚本的意图是检查MariaDB.repo是否存在,如果不存在则创建一个具有相同名称的空文件。请建议我哪里出错了&如何解决这个问题。

MDB=$(find '/etc/yum.repos.d/' -maxdepth 1 -name  "MariaDB.repo")

if [[ $"MDB" -eq "MariaDB.repo" ]]
then
    echo "Repo already exists"
else
    touch /etc/yum.repos.d/MariaDB.repo
fi

1 个答案:

答案 0 :(得分:0)

有几个问题:

  1. $"MDB"应为"$MDB"
  2. find的输出将是完整路径名,而不仅仅是文件的基本名称。
  3. -eq用于比较数字。要比较字符串,您必须使用=
  4. 但您不需要使用find。有一个内置的运算符来测试文件是否存在。

    MDB=/etc/yum.repos.d/MariaDB.repo
    if [[ -f "$MDB" ]]
    then
        echo "Repo already exists"
    else
        touch "$MDB"
    fi