如果 PATH 变量中存在 2 个具有相同文件名的命令,哪一个将被执行?

如果 PATH 变量中存在 2 个具有相同文件名的命令,哪一个将被执行?

我读到 shell 在 PATH 变量中可用的所有目录中搜索命令。我的第一个问题是,如果两个目录都有一个命令的文件,那么将执行哪一个?第二个问题是,shell 是否递归地搜索 PATH 变量中显示的目录?谢谢。

答案1

如果 2 个目录都有某个命令的文件,将执行哪一个?

第一个获胜,即PATH执行找到所需文件的第一个目录。

shell 是否递归地搜索 PATH 变量中显示的目录?

非递归地。

相关内容