如何查找定义别名的文件

Ali*_*mii 25 zsh alias search oh-my-zsh

我遇到了一个问题,我不知道如何解决。

在我系统的某个地方,我定义了一个别名:

alias subl=\''/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl'\'

我不确定这是在哪个文件中,我想更改(或实际删除)它。

我可以在我的 .zshrc 中取消别名,但这不是一个优雅的解决方案。

当我运行时,alias | grep subl它会显示别名。有没有办法让它也回显定义别名的文件的路径?

谢谢

Gil*_*il' 29

zsh -x 2>zsh.trace
exit
grep 'alias.*subl' zsh.trace
Run Code Online (Sandbox Code Playgroud)

-x选项使 zsh 打印出它在 stderr 上执行的每个命令。通过读取文件执行的任何命令都有一个带有文件名和行的前缀。因此,在跟踪文件中查找别名定义,您就会知道它的定义位置。