一、locate命令                          

用于模糊搜索文件(目录)的绝对路径。

示例1:

// 凡是绝对路径当中含jdk字符串的文件(目录)均被搜索出来
fsjohnhuang@fsjohnhuang~# locate jdk

示例2:

// 在家目录添加文件mytest.md
fsjohnhuang@fsjohnhuang~# touch mytest.md
fsjohnhuang@fsjohnhuang~# locate mytest

上述例子再添加mytest.md后马上通过locate搜索mytest的绝对路径,但什么都搜不到。那是因为locate命令是从系统db中搜索的,而这个系统db是定时在晚上与文件系统的目录结构同步,因此刚才添加文件信息无法通过locate搜索出来。这也是locate的速度必find高的原因。我们可以通过 sudo updatedb 命令手动方式同步系统db,现在就可以通过locate来搜索了。

示例3:

// 精确查找文件(目录),那么就只有文件或目录名为jdk才匹配成功
locate -b "\jdk"
// 精确查找文件(目录),那么就只有文件或目录名含jdk才匹配成功
locate -b "jdk"

二、find命令                          

用于在特定目录(默认是当前目录)下根据文件名称、文件类型等信息搜索文件相对特定目录的相对路径。

// 在当前目录下搜索
find -name "mytest.md"
// 使用通配符
find -name "mytest*" // 在特定目录下搜索
find /home/fsjohnhuang // 仅列出普通文件
find -type f
// 仅列出目录
find -type d // 对find搜索出来的文件或目录执行其他命令
// -exec 其他命令 ';'
// 而'{}'就是代表find搜索出来的文件或目录
find -exec ls -l '{}' ';'

三、grep命令                           

在文本字符串当中查找。

// 基本格式:grep 字符串 文件名
grep hello a.txt // 不区分大小写
grep -i hello a.txt // 显示行号
grep -n hello a.txt

假如是对代码搜索则可以使用ack-grep,具体教程请看happycasts.net。

四、 which命令                          

用于搜索命令的可执行文件所在位置。

如 which cat 将返回/bin/cat

五、 whereis命令                          

用于搜索命令的可执行文件、源码文件和man文件所在位置。

如 which cat 将返回cat: /bin/ls /usr/share/man/man1/ls.1.gz /usr/    share/man/man1p/ls.1p.gz

尊重原创,转载请注明来自:http://www.cnblogs.com/fsjohnhuang/p/3997211.html ^_^肥仔John

CentOS6.5菜鸟之旅:关于搜索的shell命令的更多相关文章

  1. CentOS6.5菜鸟之旅:U盘安装CentOS64位

    一.前言 之前下载了个CentOS7 32位版,一下就安装成功了,但由于其目录结构等与之前的CentOS版本有很大的不同,加上教程不多不利于我这种菜鸟学习,于是决定重装CentOS6.5来学习.本篇用 ...

  2. CentOS6.5菜鸟之旅:安装Realtek无线网卡驱动

    一.前言 CentOS6.5不像CentOS7和Unbuntu那样自动安装好了无线网卡驱动,因此需要我们折腾一下. 二.安装前的准备工作   [a] 检查无线网卡驱动的安装情况(通过查看网络接口的安装 ...

  3. CentOS6.5菜鸟之旅:安装SUN JDK1.7和Tomcat7

    一.前言   CentOS6.5系统自带Open JDK1.7.1.6和1.5,但OpenJDK部分内容与SUN JDK不兼容,因此打算重新安装SUN JDK1.7来开发. 二.卸载Open JDK ...

  4. CentOS6.5菜鸟之旅:中文编辑器忍痛放弃Sublime

    一.前言 Windows下习惯使用Sublime作为编辑器,谁知道Linux下的Sublime是如此不照顾中文用户,找了N久终于找到一个蹩脚的解决方案,于是我毅然决然地加入Vim的阵营. 二.苦苦追寻 ...

  5. CentOS6.5菜鸟之旅:安装ATI显卡驱动

    一.前言 自从安装了CentOS,我的显卡就没消停过,一直在彪高温而且噪音特别大,于是决定上网搜索解决办法.下面记录下来以供日后查阅. 二.安装fglrx driver(ATI/AMD 显卡的linu ...

  6. CentOS6.5菜鸟之旅:文件权限详解

    一.前言 Linux下所有资源.设备均被视作文件来操作,而文件权限则是决定用户可各文件操作的范围,无论是平时使用Linux,还是写程序均涉及这方面.以下为个人学习的整理,供以后查阅. 二. 三种权限 ...

  7. CentOS6.5菜鸟之旅:VirtualBox4.3识别USB设备

    一.前言 VirtualBox默认是不能识别USB设备的,但可以通过Oracle VM VirtualBox Extension Pack来增强VirtualBox的功能,增强的功能如下: 1. US ...

  8. CentOS6.5菜鸟之旅:安装VirtualBox4.3

    一.下载VirtualBox的RHEL软件库配置文件 cd /etc/yum.repos.d wget http://download.virtualbox.org/virtualbox/rpm/rh ...

  9. CentOS6.5菜鸟之旅:识别NTFS分区

    一.前言 CentOS默认时不能识别NTFS分区的,需要那么需要安装fuse-ntfs-3g来处理了. 二.安装fuse-ntfs-3g     yum install fuse-ntfs-3g

随机推荐

  1. NPOI 添加行

    IRow sourceRow = sheet1.GetRow(); ; i < dt.Rows.Count-; i++) { IRow row = sheet1.CreateRow( + i); ...

  2. 【原】MyEclipse8.5集成Tomcat7时启动错误:Exception in thread “main” java.lang.NoClassDefFoundError

    解决方法: MyEclipse->Window->Preferences->MyEclipse->Servers->Tomcat->Tomcat 6.x->L ...

  3. Oracle 11g 的官方支持周期和时限

    Oracle公司对于自身产品的支持策略大多数人很难搞清楚,对于Oracle Database 11g的支持周期,有很多朋友产生了异议,参考下文提到的一些文件,希望可以帮助大家理解Oracle的产品支持 ...

  4. windows server 2008 R2 FTP登陆错误。

    建立了一个域用户ftp. 始终登陆不上winserver 2008 R2上的FTP. 错误如下: 530-User cannot log in. Win32 error:   Logon failur ...

  5. Openresty 安装教程

    Openresty的简单安装方法,如需高级编译安装,请参照安装选项 1.安装配置好Yum源,不赘述此步骤 2.安装必要组件 yum install pcre-devel openssl-devel g ...

  6. “粪便银行”:救人拿钱两不误 A Poop Bank in Massachusetts Will Pay You $40 Every Day

    “粪便银行”:救人拿钱两不误 如果你年龄小于50岁,排便规律,而且愿意每天去美国麻省麦德福德跑一趟,那么没准你可以每天得到40美元的外快,而你需要做的事情只是生产便便. 要想得到这笔收入,请拜访“开放 ...

  7. 解决Visual Studio 调试时候不能直接访问.json后缀文件的问题

    Web.config中作如下配置: <system.webServer> <staticContent> <mimeMap fileExtension=".js ...

  8. ATT 解锁手机

    最近豪们都在忙着买买买950 本土鳖左瞅瞅右看看实在钱包不够豪 正好看到美帝640打折39刀 (http://www.microsoftstore.com/store/msusa/en_US/pdp/ ...

  9. android:layout_weight

    layout_weight 用于给一个线性布局中的诸多视图的重要度赋值. 所有的视图都有一个layout_weight值,默认为零,意思是需要显示多大的视图就占据多大的屏幕空 间.若赋一个高于零的值, ...

  10. chrome https添加信任

    在浏览器地址栏输入:chrome://net-internals/#hsts 然后到Add domain下,Domain添上诸如google.com和google.com.hk ,并勾选Include ...