2015-02-09 48 views
0

我有一个文件名的数组,我想选择一个,然后检查它目前不存在于特定目录的系统中,这是我的代码片段:bash检查文件不存在使用数组中的变量

if [ ! -f /usr/local/nginx/conf/conf.d/${cdarray[choice]}.conf ]; then 
    echo "File not found!" 
fi 

然而,这并不是调用测试,然后检查该文件是否存在

+0

欢迎来到计算器!你能解释一下为什么你认为这不太合适吗?例如,你可以显示'echo“的输出检查文件/usr/local/nginx/conf/conf.d/ $ {cdarray [choice]}。conf”'以及一个'ls -l/thatpath'显示该文件确实存在? – 2015-02-10 03:26:42

+0

嗨,如果我只是回声/usr/local/nginx/conf/conf.d/${cdarray[choice]}.conf它正确地插入它应该做的文件名,并在我的系统中文件不存在,但是当我使用上面的代码测试它,它不打印语句'文件未找到',所以即使文件不存在,我的测试仍然无法正常工作 – 2015-02-10 20:05:30

+0

刚刚意识到它工作正常,它是我将它合并到一起的2个目录我的头。 – 2015-02-10 21:03:17

回答

0

出口变量之前完全正确。 。