我遇到了一个问题,我不知道如何解决。
在我的系统上的某个地方,我定义了一个别名,如下所示:
alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl'\'
我不确定它在哪个文件中,我想更改(或实际删除)它。
我可以在 .zshrc 中取消它的别名,但这并不是一个优雅的解决方案。
当我运行时,alias | grep subl
它会显示别名。有没有办法让它也回显定义别名的文件的路径?
谢谢
答案1
zsh -x 2>zsh.trace
exit
grep 'alias.*subl' zsh.trace
该-x
选项使 zsh 打印出它在 stderr 上执行的每个命令。通过读取文件执行的任何命令都有一个包含文件名和行的前缀。因此,在跟踪文件中查找别名定义,您就会知道它是在哪里定义的。