我有一段遗留的 Linux shell 脚本代码,正在尝试理解。如能提供任何解释,我将不胜感激:
if [[ -e $fileName]]; then
我很好奇双括号是什么意思?
答案1
简短回答:它告诉 shell 检查是否存在以 $filename
了解是否选择then
或else
语句。
在评估 if 语句之前,需要测试条件——它是真还是假?这里,[[ ]]
表示一个布尔变量,其值取决于其中的表达式。传统上,[ ]
bash 语法是发出test
命令,返回表达式的值,无论类型和上下文如何。较新版本的 bash[[ ]]
专门用作 if 语句的关键字。我想这可以防止类型错误,或者其他什么。