grep

grep -rn "hello,world!" *  #递归查找当前目录下所有包含hello,world的文件
grep -C number pattern files :#匹配的上下文分别显示[number]行, -r 是递归查找
-n 是显示行号
-R 查找所有文件包含子目录
-i 忽略大小写
-c --count #计算符合样式的列数。
grep -i pattern files :#不区分大小写地搜索。默认情况区分大小写,
grep -l pattern files :#只列出匹配的文件名,
grep -L pattern files :#列出不匹配的文件名,
grep -w pattern files :#只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),
grep pattern1 | pattern2 files :#显示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :#显示既匹配 pattern1 又匹配 pattern2 的行。 \< 和 \> 分别标注单词的开始与结尾。
例如:
grep man * #会匹配 ‘Batman’、‘manic’、‘man’等,
grep '\<man' * #匹配‘manic’和‘man’,但不是‘Batman’,
grep '\<man\>' #只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。
'^':#指匹配的字符串在行首,
'$':#指匹配的字符串在行尾,

find

-name:#按照文件名称查找
-perm:#按照文件权限查找
-mtime -n +n:#按照文件更改时间查找。-n 指距离现在时间n天以内;+n n天以外
-mmin -n +n : #按照文件更改时间查找。-n 指距离现在时间n分钟以内;+n n分钟以外
-size n[c] #查长度为n块[或n字节]的文件
find / -size +5000000c #要查找所有大于 5MB 的用户文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-print  :#将匹配的文件输出到标准输出
-depth #使查找在进入子目录前先行查找完本目录
-maxdepth #至多在目录树n个级别的目录内查找
-mindepth #至少在目录树n个级别的目录中查找
find  /home -size +512k   #查大于512k的文件
find /home -size -512k   查小于512k的文件
find /home -perm 0700 #查权限为700的文件或目录
find /home -uid +501 #列出/home目录内用户的识别码大于501的文件或目录
find /home -newer tmp.txt #在/home下查更新时间比tmp.txt近的文件或目录
find . -mmin -10 -mmin +5 $ find <指定目录> <指定条件> <指定动作>
$ find . -name 'my*'
#搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。
$ find . -name 'my*' -ls
#搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。
$ find . -type f -mmin -10
#搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录。
find . -name \*.gif -exec ls {} \;

-exec 参数中包含了真正有价值的操作。当查找到匹配搜索条件的文件时,-exec 参数定义了将对这些文件进行什么操作

-ok是 -exec 参数的一个重要的替代项,它的行为和 -exec一样,但它会提示您是否要对文件运行相应的命令。

find $HOME/. -name \*.txt -ok rm {} \;

它列出了查找到的每个文件,并且系统将暂停以等待您输入Y或者 y或者n. 如果您按下 Enter 键,系统将不会删除该文件

find . \( -name a.out -o -name '*.o' -o -name 'core' \) -exec rm {} \;

括号中的文件掩码 标识出了需要删除的文件类型,每个文件掩码的前面都有 -name.该列表可以扩展为包括您需要清除的系统中的任何临时文件类型。

find $HOME/. -name \*.txt -exec head -n 1 -v {} \; > report.txt
less < report.txt

有些人使用每个文本文件的第一行作为标题或者文件内容的描述。可以使用列出文件名和所有文本文件第一行内容的报表更方便地对大量的文本文件进行筛选。

find . -empty -exec ls {} \;

列出长度为零的文件

find grep的更多相关文章

  1. grep 查找bash脚本中的注释代码

    出于安全性的考虑,不建议在bash脚本中注释掉不使用的代码.也就是说如果某段代码不使用了,那么应该删除掉,而不是简单地注释掉.假如你突然意识到这一点,而以前并没有遵从这个原则,现在需要找出脚本中的注释 ...

  2. linux grep命令

    linux grep命令1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expressio ...

  3. linux中grep的应用

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  4. Linux命令-文件文本操作grep

    文件文本操作 grep 在文件中查找符合正则表达式条件的文本行 cut 截取文件中的特定字段 paste 附加字段 tr 字符转换或压缩 sort 调整文本行的顺序,使其符合特定准则 uniq 找出重 ...

  5. 4-4 grep及正则表达式

    1. grep:Globally search a Regular Expression and Print:根据模式搜索文本,并将符合模式的文本行显示出来 pattern:文本字符和正则表达式的元字 ...

  6. grep 命令过滤配置文件中的注释和空行

    grep 用法 Usage: grep [OPTION]... PATTERN [FILE]... Search for PATTERN in each FILE or standard input. ...

  7. sed awk grep三剑客常用

    sed的常用用法: awk的常用用法: grep的常用用法: 除了列出符合行之外,并且列出后10行. grep -A 10 Exception kzfinance-front.log 除了列出符合行之 ...

  8. awk命令和grep命令的使用

    1.遇到需求:用ping命令去检测系统网络延迟 跑 ping baidu.com -c 3,想要直接得到平均延迟. ping baidu.com -c 3 | grep rtt | awk -F \/ ...

  9. grep 命令

    简单介绍:grep命令是用于分析一行信息,若当中有我们所需要的信息,就将该行取出来. 语法结构:grep [-acinv] [--color=auto] '查找关键字' #{filename} -a: ...

  10. 使用git grep进行git搜索

    1.git grep foo 会自动map所有包含foo的文件 2.git grep -n foo  显示行号 3.git grep --name-only foo 只显示文件名 4.git grep ...

随机推荐

  1. 在饼图上显示百分比值(报表生成器和 SSRS)

    在饼图上显示百分比值(报表生成器和 SSRS) 默认情况下,图例中显示了类别来标识每个值. 如果使用了类别标签标记饼图,则可能希望在图例中显示百分比. 注意 在 SQL Server Data Too ...

  2. mysql datetime、date、time、timestamp区别

    我们看看这几个数据库中(mysql.oracle和sqlserver)如何表示时间 mysql数据库:它们分别是 date.datetime.time.timestamp和year.date :“yy ...

  3. java_jdbc_batch处理_主键id获取

    //create1 速度较慢,create2较快,但是要根据数据库不同来决定 //ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_ ...

  4. 如何把 excel 设为文本格式?

    选择要设置的单元格,右键选择 --- “设置单元格格式” --- 选 “ 分类 ” 下面的 “ 文本 ” --- 确定. 修改前: 修改后:

  5. CSS 之 清除 float 常用的方法

    大多数前端使用.clearfix:after{ .....}  和 .clearit{....}的组合来清除浮动. 前端开发经常用到浮动 float:left; float:right; 有浮动就需要 ...

  6. 谈谈项目中遇到的各种iOS7适配问题

    由于我的项目要适配到iOS7.1, 而现在已经是9时代了,在实际工作中我也是遇到了各种奇葩的坑,所以我想尽快把遇到的iOS7适配问题和解决方案分享出来,以后这些东西可能就用处不大了. 1.字体问题 i ...

  7. 全新的手势,侧滑返回、全局右滑返回都OUT啦!

    前言 Android快速开发框架-ZBLibrary 最近将以前的 全局右滑返回 手势功能改成了 底部左右滑动手势. 为什么呢?为了解决滑动返回手势的问题. 目前有3种滑动返回手势 一.侧滑返回 代表 ...

  8. ViewFlipper的简单使用实现图片轮播效果

    /** * ViewFlipper: * 安卓系统自带的一个多页面管理控件,它可以实现子页面的自动切换 * 为ViewFlipper加入View: * (1)在layout布局文件静态导入子View ...

  9. Lucene全文检索系列(一)

    1. Lucene简介 Lucene是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎.Lucene以其方便使用.快速实施以及灵活性受到广泛的关注.它可以方便地嵌入到各种应用中实现针对应用的全文 ...

  10. Maven POM.xml (转)

    简介 pom.xml文件是Maven进行工作的主要配置文件.在这个文件中我们可以配置Maven项目的groupId.artifactId和version等Maven项目必须的元素:可以配置Maven项 ...