Zsh中与Bash的set -x等效的命令是什么?
Zsh中替代Bash
set -x 的轻量命令追踪方法 Zsh默认启用set -x时会输出大量内部调试的冗余内容,要实现类似Bash那种仅显示最终执行命令的效果,有以下几种简洁方案:
- 修改
PS4变量精简输出
Zsh的PS4环境变量控制调试信息的前缀格式,默认会包含栈追踪等冗余内容。只需将其设置为简单的前缀,就能和Bash的set -x效果对齐:
PS4='+ ' set -x
执行rm *后就会输出+ rm foo bar这类简洁的命令追踪内容。如果希望永久生效,把PS4='+ '添加到你的~/.zshrc配置文件中即可。
- 临时过滤输出(应急方案)
如果不想修改配置,也可以通过过滤命令输出只保留关键行:
rm * 2>&1 | grep '^+'
不过这种方法需要额外的管道过滤,不如修改PS4来得方便。
内容的提问来源于stack exchange,提问作者user18348324
相关产品推荐
相关产品推荐

