![set -x 不打印 bash 自动完成的堆栈信息](https://linux22.com/image/66436/set%20-x%20%E4%B8%8D%E6%89%93%E5%8D%B0%20bash%20%E8%87%AA%E5%8A%A8%E5%AE%8C%E6%88%90%E7%9A%84%E5%A0%86%E6%A0%88%E4%BF%A1%E6%81%AF.png)
在我的中bash 4.2.46 and centos - 7.1.1503
,我跑了set -x
(打印调试信息)。现在,如果我输入ls
,它会打印:
+ ls --color=auto
a b c
++ printf '\033]0;%s@%s:%s\007' root sk-vbox '~'
一切顺利、幸福。但是当我按下tabshell 变量来完成时,它会打印没有堆栈信息的输出:
echo $HO #tab key press here
给出:
$HOME $HOSTNAME $HOSTTYPE
和零行堆栈信息。
我非常需要这个堆栈信息来调试 bash 在自动补全上放置额外空间的问题(类似于acroread问题但可能是由于不同的原因,因为在我的例子中/etc/bash_completion.d
不包含罪魁祸首acroread.sh
。)
我在 CentOS Linux 版本 7.1.1503 上使用 bash 4.2.46。