如何查找定义别名的文件

如何查找定义别名的文件

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

在我的系统上的某个地方,我定义了一个别名,如下所示:

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 上执行的每个命令。通过读取文件执行的任何命令都有一个包含文件名和行的前缀。因此,在跟踪文件中查找别名定义,您就会知道它是在哪里定义的。

相关内容