您可以尝试以下几种方法:
- 用于
bash -v查看shell启动期间正在读取的行 
- 用于
bash -x查看在shell启动期间正在运行什么命令 
- 仅使用一个启动文件运行
 
bash -v
该-v  选项使bash读取的每个脚本文件中的每一行都打印出来。
从运行开始
bash -i -v >bash-i.out 2>&1
等待5-10秒钟,然后按Ctrl+C。
这将为您提供一个名为的文件bash-i.out,就像所有合并(或串联)的启动文件一样。
然后使用less打开文件,并使用查找别名/aliasname。
现在,比较该别名相对于文件中其他行的显示位置。例如,在大多数系统上,/etc/bash.bashrc顶部都有一个注释,/etc/bash.bashrc并且~/.bashrc也有一个注释。
如果它在您的顶部上方~/.bashrc,则可能是/etc定义别名的启动文件,否则它在您~/.bashrc的文件中,或者是通过sourceor .(点命令)包含的文件。
如果没有显示别名,请尝试
bash -l -v >bash-l.out 2>&1
这告诉bash是一个登录shell,它读取一些不同的启动文件,例如/etc/profile和~/.bash_profile而不是/etc/bash.bashrcand ~/.bashrc。
bash -x
如果bash -v没有给出明确的答案,请尝试运行bash -x,它会打印外壳正在运行的命令,而不是外壳正在读取的行。
除了更改-v为之外,方法基本上与上述方法相同-x。(如果需要,可以将两者一起使用。)
仅使用一个启动文件运行
bash -i --rcfile="$HOME/.bashrc"
看看你是否有别名。
如果系统具有,请尝试将rcfileset设置为/etc/bash.bashrc。
然后尝试
bash -l --rcfile="$HOME/.bash_profile"
并对每个profile名称相同的bash启动文件执行相同的操作,例如更改$HOME/.bash_profile为/etc/profile。
无论采用哪种方式显示别名,都会告诉您应该开始查看的文件。
               
              
set -x按照建议的方式放在您的顶部,看看是否能为您缩小范围。