深圳大型网站设计,深圳软件定制公司,中企动力科技是国企吗,新媒体宣传推广方案由于工作的需要#xff0c;少不得要在linux系统上查找各种各样的文件#xff0c;关于在linux查找的命令有不少#xff0c;这里小小的总结下。 简单介绍下各个命令的用途#xff1a; find#xff1a;实际搜索硬盘查询文件名称#xff1b;whereis#xff1a;查看文件的位置…由于工作的需要少不得要在linux系统上查找各种各样的文件关于在linux查找的命令有不少这里小小的总结下。 简单介绍下各个命令的用途 find实际搜索硬盘查询文件名称whereis查看文件的位置which查找和可执行文件的位置locate配合数据库查找文件的位置1.find命令 这个命令通过实际搜索硬盘查询文件名称一般最好能确定文件存在的最小范围尽量缩小搜索的范围因为实际搜索硬盘很花时间尤其是硬盘很大文件很多的时候。 经常和grep命令一起搜索含有某个字符串的文件,例如 find /dir -name *.sh | grep abc 网上有一篇文章讲的很好引在这里以方便查阅http://www.cnblogs.com/wanqieddy/archive/2011/06/09/2076785.html 感谢这篇文章的作者wanqi。 2.whereis命令 whereis命令只能用于程序名的搜索而且只搜索二进制文件参数-b、man说明文件参数-m和源代码文件参数-s。如果省略参数则返回所有信息。 和find相比whereis查找的速度非常快这是因为linux系统会将系统内的所有文件都记录在一个数据库文件中当使用whereis和下面即将介绍的locate时会从数据库中查找数据而不是像find命令那样通 过遍历硬盘来查找效率自然会很高。 但是该数据库文件并不是实时更新默认情况下时一星期更新一次因此我们在用whereis和locate 查找文件时有时会找到已经被删除的数据或者刚刚建立文件却无法查找到原因就是因为数据库文件没有被更新。 同样引用一篇文章http://codingstandards.iteye.com/blog/986891 3.which命令 which命令的作用是在PATH变量指定的路径中搜索某个系统命令的位置并且返回第一个搜索结果。也就是说使用which命令就可以看到某个系统命令是否存在以及执行的到底是哪一个位置的命令。 引一篇参考文章http://www.cnblogs.com/peida/archive/2012/11/08/2759805.html 感谢文章的作者peida。 4.locate命令 locate命令其实是“find -name”的另一种写法但是要比后者快得多原因在于它不搜索具体目录而是搜索一个数据库/var/lib/locatedb这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库并且每天自动更新一次所以使用locate命令查不到最新变动过的文件。为了避免这种情况可以在使用locate之前先使用updatedb命令手动更新数据库。 也引一篇文章吧http://www.cnblogs.com/peida/archive/2012/11/12/2765750.html 感谢文章的作者peida。 因此本篇文章并不算原创只是对网上知识的整理以方便查阅。感谢所有乐于分享的各位~ 转载于:https://www.cnblogs.com/flying-tiger/p/5947471.html