shell调试
shell脚本——调试(-n / -x / + / ++ )
-n 只读取shell脚本,但不实际执⾏ "-n"可⽤于测试shell脚本是否存在语法错误,但不会实际执⾏命令。 -x 进⼊跟踪⽅式,显⽰所执⾏的每⼀条命令 "-x"选项可⽤来跟踪脚本的执⾏,是调试shell脚本的强有⼒⼯具。 -v 显⽰所有⾏,详细模式
sh -n file.sh
# 检查脚本中的语法错误,并显⽰⾏号
export PS4='+[$LINENO]' / export PS4='+{$LINENO:${FUNCNAME[0]}} '
#这个变量加⼊到.bash_profile中,在进⾏代码调试时,会显⽰⾏号(⽆函数时,⼀般⽤前者)
set -x #启动debug模式
set +x #关闭debug模式
sh -x file.sh #进⾏脚本调试(debug)
+号⾏: shell脚本实际执⾏的命令
++ 号⾏: 执⾏trap机制中指定的命令
其它的⾏则是输出信息
shell最简单脚本补充: $LINENO 代表shell脚本的当前⾏号,类似于C语⾔中的内置宏__LINE__
\(FUNCNAME 函数的名字,类似于C语⾔中的内置宏__func__,但宏__func__只能代表当前所在的函数名,⽽\) FUNCNAME的功能更强⼤,它是⼀个数组变量,其中包含了整个调⽤链上所有的函数的名字,故变量\({FUNCNAME[0]}代表shell脚本当前正在执⾏的函数的名字,⽽变量\){FUNCNAME[1]}则代表调⽤函数${FUNCNAME[0]}的函数的名字,余者可以依此类推。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论