- -n: 只是将脚本都读取一遍,检查是否有语法错误
- 用法: bash -n my_script.sh 或者在脚本里面的“#!/bin/bash -n”,下面默认是指在脚本里面中使用选项
- 效果: 如果有语法错误,会提示,没有检测到语法错误,则安静的退出
-x: 调试选项,显示每条语句,以“+”开头,其后的变量都经过替换了,强烈推荐,经常与trap DEBUG配合使用trap的用法后面会提到
效果:
./debug.sh
+ trap 'echo "在 $LINENO 行之前,变量 a=$a , b=$b"' DEBUG #这是命令行本身,以一个‘+’开头
++ echo '在 9 行之前,变量 a= , b=' #这是输出,以两个‘++’开头
在 9 行之前,变量 a= , b= #开头提示符'+'可以通过PS4调整,如PS4='*'
+ a=1
++ echo '在 10 行之前,变量 a=1 , b='