如何通过bash脚本检查文件是否存在?
问题描述:
我想克隆一个回购站并通过bash脚本完成测试。我已经根据Bash Shell: Check File Exists or Not编写了我的测试代码。如何通过bash脚本检查文件是否存在?
#!/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 :(
消息。
任何建议,将不胜感激。谢谢。
答
改成这样(使用相对路径):
INFER_PATH="./infer/infer/bin/infer"
[ -e ${INFER_PATH} ] && echo "Infer downloaded successfully" || echo "Something went wrong :("
,它应该工作。
答
如果你想知道,如果一个文件存在,您可以使用-f
标志:
[ -f /infer/infer/bin/infer ] && echo "Infer downloaded successfully" || echo "Something went wrong :("
+0
不幸的是,我仍然'出了点问题:(' – Hesam
这行是我的错误,我只是更新了我的代码,谢谢指出,但我仍然有相同的输出:( – Hesam
所以你的文件的名称是推断或infer.sh? – yaga
这个名字是'infer'。 – Hesam