请问命令的查找的顺序是怎样的

请问命令的查找的顺序是怎样的

sbin,bin,usr/bin,usr/sbin,usr/local/sbin,usr/local/bin,usr/X11R6/bin这些目录
查找的顺序是怎样的,与写在/etc/profile文件中的先后顺序相关吗?比如每一个目录中都有一个相同命令的文件,那执行的究竟是哪一个目录中的呢?普通用户和root用户应该是不同的,那又是怎么查找的?


[code:1]
# Set the default system $PATH:
PATH="/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games"

# For root users, ensure that /usr/local/sbin, /usr/sbin, and /sbin are in
# the $PATH.  Some means of connection don't add these by default (sshd comes
# to mind).

[/code:1]
echo $PATH

看看顺序. 这个可能在
/etc/profile
/etc/bashrc
~/.profile
~/.bashrc
里面设置.
感谢你的及时回复
可是你没有明白我的意思,我觉得帖子里说的很明白了。
引用:
与写在/etc/profile文件中的先后顺序相关吗?
好像正是如此,你可以自己写个脚本放在不同目录测试一下嘛。
怎么?

搜索顺序确实是 $PATH 里的顺序.
如果两个目录里都有,当然用前一个目录里的.

root 一般比一般用户多 /sbin:/usr/sbin

/etc/profile
/etc/bashrc
~/.profile
~/.bashrc
在这些里面都可能设置 PATH
有的是
PATH=.....:$PATH
有的是
PATH=$PATH:......
根据这些脚本执行顺序,最后才有一个 PATH.