条件测试与条件判断的脚本编写思路
测试命令语法与路径表达在编写脚本前需单独测试命令是否能实现需求。例如检查文件是否存在test -e /opt/1.txt # 或使用方括号格式 [ -e /opt/1.txt ]通过echo $?验证返回值0为真非0为假。变量与命令结合将静态路径替换为变量增强脚本灵活性file_path/opt/1.txt [ -f $file_path ] echo 文件存在 || echo 文件不存在调试脚本使用bash -x逐行调试脚本观察变量展开与命令执行顺序bash -x your_script.sh条件判断操作符详解文件/目录测试-e目标是否存在文件或目录均可-f目标是否为普通文件-d目标是否为目录-L目标是否为符号链接-r/-w/-x检查当前用户对目标的读/写/执行权限逻辑运算符或-a仅当左侧命令成功返回0时执行右侧命令||或-o仅当左侧命令失败返回非0时执行右侧命令[ -f /opt/1.txt ] echo Found || echo Not found数值比较操作符整数比较-eq等于等价于-ne不等于等价于!-gt大于等价于-lt小于等价于-ge大于等于等价于-le小于等于等价于示例a19 [ $a -gt 10 ] [ $a -lt 20 ] echo 在10到20之间多分支条件结构if-elif-else 示例根据多个条件执行不同分支food面条 if [ $food 米饭 ]; then echo 去吃米饭 elif [ $food 面条 ]; then echo 去吃面条 elif [ $food 烤鱼 ]; then echo 去吃烤鱼 else echo 吃馒头 fi注意事项字符串比较使用而非-eq后者用于数值。方括号内变量建议用双引号包裹避免空值或空格导致语法错误。缩进非必须但可提升可读性。