如何禁用“set -x”?

如何禁用“set -x”?

出于某些调试目的,我启用了该命令set -x。现在我的 Bash shell 的输出如下所示:

$ ls
+ ls --color=auto
Certificates  Desktop  Documents  Downloads  Dropbox ...

我怎样才能禁用set -x这样我就不会看到类似的东西+ ls --color=auto

答案1

你只需要跑set +x

man bash

Using + rather than - causes these options to be turned  off.

答案2

另一种方法是在子 shell 中使用set -x,以便自动重置此选项:

#!/bin/bash

touch one
(
    set -x
    touch two
)
touch three

# Only "+ touch two" will get printed

相关内容