ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 命令简介 ## ●whereis 功能:定位文件所在的目录 使用whereis命令可以定位常用命令的位置: ~~~ [root@yanghsia root]#whereis ls (# 定位ls命令的位置) ls:/bin/ls (# ls位于/usr/bln目录下) ~~~ whereis命令不是通过查找磁盘上的所有文件来实现定位的,你可以随便指定一个可执行文件,估计whereis会找不到,这是因为whereis是根据环境变量PATH来查找文件的,而PATH通常设置成存放命令的那些路径,如 /bin、/usr/bin等,因此whereis的用途仅限于定位shell命令所在的位置。 ## ●find 功能:查找文件 find命令可以用来从指定的目录开始查找文件,它的速度虽比不上whereis命令,但没有任何限制,而且功能要比whereis命令强。 ~~~ [root@yanghsia root]#find -name student.txt /tmp/student.txt (# 查找结果) ~~~ ## ●locate 功能:查找文件或目录 除find命令外,locate也是在系统中查找文件的常用方法。 ~~~ [root@yanghsia root]#locate student.txt (# 查找student.txt文件) ~~~ 用locate命令查找的文件和find一样没有任何限制,但执行速度却比find要快不少,其主要原因在于,locate不是从磁盘中实时查找文件,而是到由updatedb命令产生的信息库中查找相应的文件和目录,这样一来速度当然快了。 ~~~ [root@yanghsia root]#updatedb ~~~ 注 意:如果locate找不到某个文件,而你又确信该文件肯定存在,那一定是updatedb生成的信息库已经过时了。此时你要做的就是以root身份登 录,然后执行updatedb命令,重新建立整个系统所有文件和目录的资料库,虽然这个过程可能会浪费一点时间,但以后再查找文件时就方便多了。 Linux文件搜索 which,whereis,locate,find 在Linux中,也有相当优秀的搜索系统。通常,find不常用,因为速度慢,耗费硬盘空间。通常我们先使用whereis或者locate来检查,如果 找不到,才用find搜索。为什么?因为whereis与locate是使用数据库来搜索数据,所以相当快,而且并没有实际搜索硬盘,比较省时。