export testval='hdhhdhdh'
echo $testval
if [ ! -d ${testval} ]; then
echo -e "${RED}Please specify jettyScheduler as an environmental
variable${RESET}"
exit
fi即使在脚本中显式设置了testval,上述评估也会失败。我买了一台装有Windows10操作系统的新笔记本电脑,在Windows7上使用cygwin时,上面的功能运行得很好。在windows10上使用cygwin & git bash也同样失败。有人能帮帮忙吗?
发布于 2017-12-02 03:44:10
你误解了test -d的作用-它检查目录的存在,所以你看到的是预期的(假设'hdhhdhdh‘不是目录的名称)。如果您只想检查是否设置了环境,那么正如您所看到的,test -z (或者相反,test -n)是一种方法。
附注:你也应该养成引用变量("$testval")的习惯,如果它可能包含空格的话。
https://stackoverflow.com/questions/47547086
复制相似问题