_LINE__相当于Linux shell

时间:2010-09-13 10:09:30

标签: linux shell

我正在写一个相当庞大的shell脚本。有没有办法从该脚本打印脚本的行号?基本上我想要有类似于gcc LINE 宏的东西。这将帮助我调试我的脚本。

提前致谢,

Souvik

3 个答案:

答案 0 :(得分:2)

也许这有点帮助:

http://www.network-theory.co.uk/docs/bashref/BashVariables.html

BASH_LINENO
  An array variable whose members are the line numbers in source files corresponding to each member of FUNCNAME. ${BASH_LINENO[$i]} is the line number in the source file where ${FUNCNAME[$i]} was called. The corresponding source file name is ${BASH_SOURCE[$i]}. Use LINENO to obtain the current line number. 

答案 1 :(得分:0)

$LINENO变量返回使用该变量的行。

答案 2 :(得分:0)

不久前我必须自己做这件事并发现这篇有用的文章:http://aymanh.com/how-debug-bash-scripts#adding-line-numbers-to-tracing-output

基本上你需要使用$LINENO来获取脚本中的当前行。