在 Linux 的 Shell 脚本中,fi 是 if 语句的结束标记,用于闭合一个条件判断块。它的作用类似于其他编程语言中的 } 或 end if。
if [ 条件 ]; then
# 条件成立时执行的代码
fi # 结束 if 块
fi 必须与 if 成对出现,否则脚本会报错(如 syntax error: unexpected end of file)。fi 不强制缩进,但良好的习惯是让它与对应的 if 对齐,提高可读性。if-else 嵌套时,每个 if 都需要自己的 fi。if [ -f "/path/to/file" ]; then
echo "文件存在。"
fi
if 的 fiif [ "$var" = "yes" ]; then
if [ -d "/tmp" ]; then
echo "目录存在。"
fi # 闭合内层 if
fi # 闭合外层 if
else/elif 结合if [ "$1" -gt 10 ]; then
echo "大于10。"
elif [ "$1" -gt 5 ]; then
echo "大于5。"
else
echo "其他情况。"
fi # 闭合整个 if-elif-else 块
fi:会导致脚本终止并报错。fi 顺序:在嵌套时,内层 fi 必须在外层之前闭合。fi 是 if 倒过来拼写(类似 case 语句用 esac 闭合)。done(for/while 循环)、esac(case 语句)。如果遇到具体脚本问题,可以提供代码片段进一步分析!