【发布时间】:2013-10-21 23:45:33
【问题描述】:
我知道要调试脚本我可以发出命令
set -x
在第一行。问题是当脚本启动其他一些脚本时,它们不会继承此设置。所以我的问题是是否有可能为 shell 和所有子 shell 或某些脚本和它启动的所有脚本全局设置这个标志?
【问题讨论】:
-
有一个子shell的理由吗?
-
+1 您当然无法阻止内部脚本显式关闭该选项,但除了使用
bash -$-调用每个脚本之外,我没有看到其他方法。好奇地等待答案。 -
@kojiro 你永远不需要编辑源文件来调试,因为它本身就是错误的来源。答案是在命令行上将调试标志传递给 bash 并使用 SHELLOPTS。见:stackoverflow.com/a/56136968/37370
-
我不认为我说的是你认为我说的,瞧,这八年前。
标签: linux bash shell debugging ksh