在linux中,所有的文件都是以目录树的形式存在的。而每个发行版的文件存放之间又会有些差别。

这时候,如果我们想看某个命令或者文档的时候就必须先通过某种方式找到改文档的所在位置。

在linux中提供了以下几种方式来查找

which:查找命令

whereis:寻找特定文件

locate:寻找特定文件

find:查找文件

grep:查找文件内容(重要)

◇which

which默认是根据[$PATH]这个环境变量中设置的路径去查找,并且只查找第一个

使用方式:which [-a] 命令,-a :表示列出所有的,而不是仅仅第一个

使用例

[fuwh@localhost ~]$ which ifconfig
/sbin/ifconfig
[fuwh@localhost ~]$ which which
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
/usr/bin/which
[fuwh@localhost ~]$ which cd
/usr/bin/which: no cd in (/usr/lib/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/fuwh/bin)
[fuwh@localhost ~]$

可以看到,上面的查找结果中,有出现alias,这表示别名。

还有,cd这个命令居然找不到,这是因为cd是系统内建的命令,而不在PATH中。

[fuwh@localhost ~]$ type cd
cd is a shell builtin
[fuwh@localhost ~]$

◇whereis

在linux中,有一个数据库是用来维护所有的文件系统信息的。就是/var/lib/mlocate/mlocate.db。

而whereis和locate命令都是从这个数据库中去查找,所以非常的快速。但是这个数据库默认是每天升级一次,所以

新建的文件可能不能及时在数据库中反应,会出现查找不到的现象。当然也可以使用[updatedb]来手动更新数据库。

使用方法:where  [-bmsu] 文件或目录

-b:只查找binary格式的文件

-m:只查找在说明当manual路径下的文件

-s:只查找source来源文件

-u:查找不再上诉三哥项目当中的其他特殊文件

◇locate

使用方式:locate [-ir] 关键字

-i:表示忽略大小写

-r:后面可以接正规表示法的显示方式

◇find

使用方式: find [PATH] [option] [action]

选项与参数:
1. 与时间有关的选项:共有 -atime, -ctime 与 -mtime ,以 -mtime 说明
-mtime n :n 为数字,意义为在 n 天之前的『一天之内』被更动过内容的文件;
-mtime +n :列出在 n 天之前(不含 n 天本身)被更动过内容的文件档名;
-mtime -n :列出在 n 天之内(含 n 天本身)被更动过内容的文件档名。
-newer file :file 为一个存在的文件,列出比 file 还要新的文件档名

◇grep

grep主要用来查找文件的内容。在shell编程中也非常重要,还支持正则表达的查找方式。

使用方式:grep [-acinv] [--color=auto] '搜寻字符串' 文件名
-a:将binary文件以text文件的方式搜寻数据
-c:计算找到的总次数

-i:忽略大小写

-n:表示顺道输出行号

-v:反向选择,也就是显示出没有搜寻字符串的那一行

--color=auto:可以将找到的关键字部分加上颜色的显示

主要正则表达式参数:

\:表示转义字符

^:匹配以某个字符开始的行

$:匹配以某个字符结束的行

\<:从匹配正则表达式的行开始

\>:到匹配正则表达式的行结束

[ ]:在[]内的某单个字符

[ - ]:属于-前后的字符,比如[a-g],则表示a到g之间的字符

.:表示一定有一个任意字符

*:表示前面0个或多个字符

实例

[fuwh@localhost stu]$ cat t
this is the first line
this is the second line
what is this
how can i konw
[fuwh@localhost stu]$ grep $"line" --color=auto t
this is the first line
this is the second line
[fuwh@localhost stu]$ grep ^"wh" --color=auto t
what is this
[fuwh@localhost stu]$ cat t|grep [t] --color=auto t
this is the first line
this is the second line
what is this
[fuwh@localhost stu]$

Centos常用命令之:搜索的更多相关文章

  1. 第3章 CentOS常用命令

    一.CentOS常用命令 1.1 文件和目录 # cd /home                        进入 '/home' 目录 # cd ..                       ...

  2. centos常用命令

    应用程序->附件->终端 一:使用CentOS常用命令查看cpumore /proc/cpuinfo | grep "model name"   grep " ...

  3. CentOS 常用命令大全

    下面,就给大家介绍这些CentOS常用命令. 一:使用CentOS常用命令查看cpu more /proc/cpuinfo | grep "model name" grep &qu ...

  4. CentOS常用命令大全

    一:使用CentOS常用命令查看cpumore /proc/cpuinfo | grep "model name" grep "model name" /pro ...

  5. Linux常用命令——文件搜索命令

    Linux常用命令——文件搜索命令 Linux  以#号开头的内容都是内容描述或配置项 find 描述:文件搜索 语法:find [搜索范围] [范围条件] . 当前目录 示例:[root@local ...

  6. CentOS常用命令备忘

    1. 查看进程 ps -a 杀掉进程 kill PID 2. 添加计划任务crontab -e 例如:30 21 * * * service httpd restart 每天21:30重启apache ...

  7. CentOS 常用命令及快捷键整理

    常用命令: 文件和目录: # cd /home                        进入 '/home' 目录 # cd ..                                ...

  8. CentOS常用命令、快照、克隆大揭秘

    不多说,直接上干货! cat是查看文件内容, cp –cp是连目录及件文件都拷贝 cp是拷贝文件 a.txt里的内容是,   abc   def   ghi cat a.txt |grep –v gh ...

  9. Centos 常用命令[持续积累中...]

    CentOS常用到的查看系统命令 uname -a cat /etc/issue /sbin/ifconfig # 查看内核/操作系统/CPU信息 head -n 1 /etc/issue # 查看操 ...

  10. linux常用命令-文件搜索命令-find

    find [目录] [选项] 文件名或者正则表达式 -name 根据文件名搜索 -iname 搜索文件名的时候忽略大小写 例:find /etc -name init     find /etc -i ...

随机推荐

  1. alpha冲刺第八天

    一.合照 二.项目燃尽图 三.项目进展 首页文章显示部分 首页小功能福大地图完成 四.明日规划 发现爬取的数据是一整个网页的内容,而我们需要的仅仅是教务处通知的文章,在筛选方面还需要改进,查找如何进行 ...

  2. C语言--函数嵌套

    一.实验作业 注意: 1.可以先初始化2个结构体数组数据以便测试. 2.要求用模块化方式组织程序结构,合理设计各自定义函数.同时,程序能够进行异常处理,检查用户输入数据的有效性,用户输入数据有错误,如 ...

  3. C语言程序设计第四次作业——选择结构(2)

    Deadline: 2017-11-5 22:00 一.学习要点 掌握switch语句 掌握字符常量.字符串常量和字符变量 掌握字符型数据的输入输出 二.实验内容 完成PTA中选择结构(2)的所有题目 ...

  4. spring mvc 整合Quartz

    Quartz是一个完全由java编写的开源作业调度框架.不要让作业调度这个术语吓着你.尽管Quartz框架整合了许多额外功能, 但就其简易形式看,你会发现它易用得简直让人受不了!Quartz整合在sp ...

  5. MySQL-压缩版-windows安装

    1.首先去dev.mysql.com/downloads/mysql/下载MySQL的压缩包,然后解压到任意盘符下. 2.打开系统变量在Path下追加mysql的路径(例如:C:\mysql-5.7. ...

  6. Python之旅_第一章Python入门

    一.编程语言分类 1.机器语言:即计算机能听懂的二进制语言,0000 0001,直接操控硬件: 2.汇编语言:简写的英文标识符代替二进制语言,本质同样是直接操控硬件: 3.高级语言:用更贴近人类的语言 ...

  7. spring-oauth-server实践:授权方式四:client_credentials 模式的refresh_token?

    spring-oauth-server入门(1-13)授权方式四:client_credentials 模式的refresh_token? 有效期内的反复申请access_token获取失效日期不变! ...

  8. redis入门(01)redis的下载和安装

    参考链接: 命令手册 : http://www.redis.net.cn/order/ 菜鸟教程: http://www.runoob.com/redis/redis-install.html 一.概 ...

  9. CSS简介及基本知识

    (CSS)cascading style sheets:层叠样式表.级联式样式表,简称:样式表. Sheets :就是一个样式文件,它的扩展名为.css Style:外观,个性化 样式表的位置 为了学 ...

  10. python 异常 反射

    异常 反射 一.异常处理: AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x IOError 输入/输出异常:基本上是无法打开文件 ImportError ...