大部分人不了解这篇文章“如何使用Linux云服务器的搜索命令”的知识点,所以主机频道为你总结了以下内容,内容详细,步骤清晰,有一定的参考价值。希望你看完这篇文章能有所收获。我们来看看这篇文章《如何使用Linux云服务器的搜索命令》。
whereiswhereis命令用于查找二进制文件、源代码和帮助手册。其中只在几个常用的安装目录范围内找到,不会找到整个系统上的所有文件。虽然这是whereis的局限性,但也正是因为这个原因,whereis的搜索速度非常快。同样值得注意的是,whereis并不寻找shell中内置的命令。
例如,我们希望找到ls命令:
whereis ls的结果如下,其中/bin/ls是ls的路径,另外两个是帮助手册的路径。
Ls:/bin/LS/usr/share/man/man 1/LS . 1 . gz/usr/share/man/man1p/LS . 1p . gz如果我们将LS复制到主目录和/usr/bin/ls目录,请再次执行whereis命令:
cp /bin/ls ~
cp /bin/ls /usr/bin/ls
其中ls的结果如下。可以发现,whereis并没有找到主目录,因为主目录并不是常用的安装目录之一。
ls:/bin/ls/usr/bin/ls/usr/share/man/man 1/ls . 1 . gz/usr/share/man/man 1p/ls . 1p . gz使用whereis查找这些shell中内置的命令:
whereis cd的结果如下,只显示了帮助手册的路径。
命令CD:/usr/share/man/man 1/CD . 1 . gz/usr/share/man/man1p/CD . 1p . gzlocatelocate是一个基于文件数据库(/var/lib/mlocate/mlocate.db)的搜索工具,它是整个文件系统的镜像。默认情况下,locate命令的搜索模式是模糊匹配,也就是说会找到所有包含文件名的文件,所以返回的结果通常更多。值得注意的是,文件数据库通常每天更新一次,因此可能无法找到一些刚刚创建或删除的文件。我们可以执行updatedb命令来手动更新这个数据库。因为是基于文件数据库而不是文件系统,所以locate的执行速度也相当快。
还是以ls为例来找:
定位ls我们会得到很多包含ls的结果。为了使输出结果更加准确,可以使用-b指令,即使用精确匹配模式来查找。
定位-b & quot;\ ls & quot因此输出只包含ls命令所在的路径。
/bin/lswhich命令的搜索范围是环境变量PATH,默认只返回第一个结果,所以执行速度很快。如果我们在寻找一个别名,在寻找之前,哪个命令也会映射到别名对应的真实路径。
例如,我们定义了一个别名ll,搜索命令如下:
哪些ll结果如下:
别名ll = & # 39ls-l-color = auto & # 39;
/bin/ls如果我们想显示所有结果,只需添加-a命令。
哪个-一个your_commandtypetype命令用于显示命令的类型,如别名、关键字、函数、内置命令、文件等。和whereis命令一样,type命令只存在于几个常用的安装目录范围内。
显示cd命令的类型:
cd标牌
Cd是一个shell内置的显示二进制文件的类型:
sudo类型
Sudo是/usr/bin/sudo显示别名:
ls型
ls别名为` ls-color = auto & # 39;Find在五个搜索命令中,find命令是最强大的命令,也是最慢的命令。与其他四个命令不同,find命令基于文件系统搜索,一次搜索一个文件节点。find命令甚至可以对搜索结果执行后续操作。
find命令的基本用法:
在主目录及其子目录中找到[路径][选项][操作],找到文件名为aaa的文件:
查找~-姓名& # 39;aaa & # 39在整个文件系统中,查找修改时间在24小时内的文件:
Find/-mtime 0在nginx的web目录及其子目录中,找到用户为nginx的文件:
找到/usr/share/nginx/html/-usernginx在当前目录下,找到有权限的文件744:
Find -perm -0744在当前目录中,找到文件名为aaa的文件,并显示其详细信息:
find-name & # 39;aaa & # 39-exec ls-l { } \;
评论前必须登录!
注册