which和whereis命令都是Linux操作系统下查找可执行文件路径的命令。
这条命令主要是用来查找系统***PATH目录下***的可执行文件。说白了就是查找那些我们已经安装好的可以直接执行的命令,比如
swq123459@swq123459PC:~$ which ls
/bin/ls
注意上述斜体字, which 查找的可执行文件,必须是要在 PATH 下的可执行文件,而不能是没有加入 PATH 的可执行文件,即使他就是可执行文件,但是没有加入到系统搜索路径,他仍然无法被 which 发现。
这个命令可以用来查找二进制(命令)、源文件、man文件。与which不同的是这条命令可以是通过文件索引数据库而非PATH来查找的,所以查找的面比which要广。例如:
swq123459@swq123459PC:~$ whereis ls
ls: /bin/ls
/usr/share/man/man1/ls.1.gz
可以看到,whereis不仅找到了 ls 可执行文件的位置,还找到了其 man 帮助文件,可见其搜索范围比较广,不局限于PATH。
本文详细对比了Linux操作系统中which和whereis两个命令的功能。which用于查找已安装并可在PATH目录下直接执行的命令;whereis则通过文件索引数据库查找二进制文件、源文件和man手册页,其搜索范围更广。
299

被折叠的 条评论
为什么被折叠?



