我-x
用来跟踪 bash 脚本的执行:
#!/bin/bash -x
x=1
y=2
在执行期间发送到输出
+ x=1
+ y=2
问题:如何在脚本中间停止/暂停跟踪模式然后再次启用它?请注意 ti 不是关于 y=2 >/dev/null 之类的东西。
是否可以在详细模式下(#!/bin/bash -v
)?
我-x
用来跟踪 bash 脚本的执行:
#!/bin/bash -x
x=1
y=2
在执行期间发送到输出
+ x=1
+ y=2
问题:如何在脚本中间停止/暂停跟踪模式然后再次启用它?请注意 ti 不是关于 y=2 >/dev/null 之类的东西。
是否可以在详细模式下(#!/bin/bash -v
)?
set
内置控制这些选项。开启
xtrace
:要关闭它:
这有点像加号和减号的逆逻辑,但确实如此。
同样,支持的所有其他选项
set
也可以在命令行(*)上设置,与 etcbash -u
一样set -u
。链接描述中有这些选项的列表,并且help set
在命令行上也会显示它们。一些选项也有很长的形式,例如
set -o xtrace
与 相同set -x
。(* 我们不能反过来说。并非所有命令行选项都可以用 设置
set
,例如-l
没有等效项,-c
显然也没有。)