代码之家  ›  专栏  ›  技术社区  ›  Hesam

如何通过bash脚本检查文件是否存在?

  •  1
  • Hesam  · 技术社区  · 9 年前

    我正在尝试克隆一个repo,并在通过bash脚本完成后进行测试。我已经根据 Bash Shell: Check File Exists or Not .

    #!/bin/bash
    
    echo "*** TRY TO INIT INFER ***"
    
    # Clone Infer
    INFER_GIT_PATH="https://github.com/facebook/infer.git"
    echo "> Try to Clone Infer from ${INFER_GIT_PATH}"
    git clone ${INFER_GIT_PATH}
    
    INFER_PATH="/infer/infer/bin/infer"
    [ -e ${INFER_PATH} ] && echo "Infer downloaded successfully" || echo "Something went wrong :("
    

    尽管回购可以成功下载 /infer/infer/bin/infer.sh 存在,我总是得到 Something went wrong :( 消息

    如有任何建议,将不胜感激。谢谢

    2 回复  |  直到 9 年前
        1
  •  2
  •   yaga    9 年前

    将其更改为(使用相对路径):

    INFER_PATH="./infer/infer/bin/infer"
    [ -e ${INFER_PATH} ] && echo "Infer downloaded successfully" || echo "Something went wrong :("
    

    它应该会起作用。

        2
  •  1
  •   blue112    9 年前

    如果您想知道文件是否存在,可以使用 -f 标志:

    [ -f /infer/infer/bin/infer ] && echo "Infer downloaded successfully" || echo "Something went wrong :("