当前位置: 移动技术网 > 科技>操作系统>Linux > [Intern][2019.03.25]Linux中的查找

[Intern][2019.03.25]Linux中的查找

2019年03月26日  | 移动技术网科技  | 我要评论

tmux天下第一

全世界所有用cli linux的人都应该用tmux,我爱它!

======================== 以下是正文 ========================

linux下面常用的搜索命令有这些:find locate grep which whereis。其中在我用的suse上,并没有locate,所以也不能用它神奇的手动更新数据库和"高速"索引查找,而grep是文字查找命令(但是配合某些命令共同执行有奇效)。下面我们来看一看他们都是干嘛的

上面四个窗格对应了四个不同的查找命令

grep:

grep命令用于在文本文件中查找字符串,可以理解为不用打开文件就能找到文件里有没有某些内容。由于linux一切皆文件的特性,在输入某些带有返回值的命令(比如你用ls的时候他就返回给你很多内容,这个内容就是返回值)时,可以通过管道(就是上面命令里面的‘|’)把前一个命令的输出作为后一个命令的输入,于是乎grep就可以帮你“查找文件”了

用的时候:

<command a> | grep [-p] '[regular expression]'  其中-p调用perl进行高级正则表达式调用,正则表达式外的单引号不可以缺少

which:

which命令相对比较专一,所以也就比较菜。他只查找在环境变量里面的可执行文件(linux man page里面讲它是用来搜索“program”也就是“程序”的)。linux不像windows,它的环境变量真的长得像环境变量,查看则是输入“echo $path”,所以只有放在各种bin目录,并且这个bin目录被添加进path里面的程序才能被which命令找到。

注意,这个命令并不支持正则表达式,也就是说你得知道你要找的程序的全名

find:

这个命令是linux通用搜索命令,他会直接检索整个磁盘来找你输入的东西,支持的参数超过二十个,非常非常强大的同时,也非常非常慢,海峡对岸某些朋友称这个命令“操硬碟”。在此处我不打算讨论它,毕竟如上图所示我都完成剩下三个命令的实例加上截图操作,他都没有运行完……

2019.03.25 update:-name可以用通配符*,要使用正则表达式请使用-regex 

——某些网站的教程是有bug的,他们把所有的参数都标成了<范本样式>然而……大部分的“范本样式”不可以使用正则

whereis:

个人感觉比较鸡肋的一个命令……希望有识之士告诉小弟这个命令的独到之处。

如图所示他只能查找二进制bin、源代码src和帮助man这几个目录下面的东东,具体他检索那些目录,请使用whereis * 来查询

以上就是我的一些拙见,说实话find真的……学了用了快一个月还没搞明白具体如何运作的……惭愧

学明白了在把一些想法放上来吧!可怜的硬碟,要被 /usr/bin/find 艹啦!

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网