PS1~4
原是shell中内置的环境变量,我们来查看一下:
node2:~ # echo $PS4
+
node2:~ # set | grep PS4
PS4='+ '
node2:~ #
因此我们就可以增加一些内置变量来重新定义$PS4
的值,增强-x
选项的输出信息。例如在我们的代码内部可以这样写:
set -x xtrace
_ps4=$PS4
export PS4='+{\$LINENO:${FUNCNAME[0]}} '
#执行我们的代码
...
配合-x
选项来执行脚本,就能在每一条实际执行的命令前面显示其行号以及所属的函数名。