grep命令

grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

选项:

-a 不要忽略二进制数据。
-A<显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容。
-b 在显示符合范本样式的那一行之外,并显示该行之前的内容。
-c 计算符合范本样式的列数。
-C<显示列数>或-<显示列数>  除了显示符合范本样式的那一列之外,并显示该列之前后的内容。
-d<进行动作> 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作。
-e<范本样式> 指定字符串作为查找文件内容的范本样式。
-E 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。
-f<范本文件> 指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每一列的范本样式。
-F 将范本样式视为固定字符串的列表。
-G 将范本样式视为普通的表示法来使用。
-h 在显示符合范本样式的那一列之前,不标示该列所属的文件名称。
-H 在显示符合范本样式的那一列之前,标示该列的文件名称。
-i 忽略字符大小写的差别。
-l 列出文件内容符合指定的范本样式的文件名称。
-L 列出文件内容不符合指定的范本样式的文件名称。
-n 在显示符合范本样式的那一列之前,标示出该列的编号。
-q 不显示任何信息。
-R/-r 此参数的效果和指定“-d recurse”参数相同。
-s 不显示错误信息。
-v 反转查找。
-w 只显示全字符合的列。
-x 只显示全列符合的列。
-y 此参数效果跟“-i”相同。
-o 只输出文件中匹配到的部分。

grep命令

wc命令用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。

选项:

-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。

例子

在文件a中统计 hello 出现的行数:

grep hello a | wc -l

在文件a中统计hello出现的次数:

grep -o hello a | wc -l

grep命令和wc命令 这种可以在命令行中通过 | 互相链接 ,作为输入的命令原来有同一的名字 叫做 :::::::管道命令!

  1、管道命令只处理前一个命令正确输出,不处理错误输出。

  2、管道命令右边命令,必须能够接收标准输入流命令才行。

cat test.sh | grep -n 'good'
输出:
1:echo very good
2:echo goodgrep是文本正则查找命令, -n 表示找到后输出行号;
grep的输入是 cat命令的输出 也就是整个tesh.sh文本的标准输出
cat test.sh | ls
a.c               hah          SDK-gcc-1.0         笔记11~
algorithm         huawei2016   sed_operation       笔记11
a.out             LCSp         sed_operation~      公共的
clion-2016.1.1    learngit     Shell               模板
ClionProjects     mytest       SimilarGraphSearch  视频
core_uses_pid~    n1           software            图片
core_uses_piy~    n1~          sublime-imfix.c     文档
core_uses_piz~    n2           test.sh             无标题文档~
examples.desktop  n2~          test.sh~            下载
Game              Qt           The-first-project   音乐
gnuplot-4.4.0     QTWorkspace  UNIX                桌面

因为 ls不支持标准输入 所以test.sh中的内容被丢弃。

cat test1.sh test.sh 2>/dev/null | grep -n 'good'
1:echo very good
2:echo good
5:echo good
#将test1.sh 没有找到错误输出重定向输出给/dev/null 文件,正确输出通过管道发送给grep

>是重定向

  |是管道重定向

  区别是:

  1、左边的命令应该有标准输出 | 右边的命令应该接受标准输入

  左边的命令应该有标准输出 > 右边只能是文件

  左边的命令应该需要标准输入 < 右边只能是文件

  2、管道触发两个子进程执行"|"两边的程序;而定向是在一个进程内执行。

Linux管道命令grep 和 wc相关推荐

  1. linux grep命令参数及用法详解---linux管道命令grep

    功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...

  2. linux怎么打出管道命令这个符号,linux 管道命令 竖线 ‘ | ’

    管道符号,是unix功能强大的一个地方,符号是一条竖线:"|", 用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为comm ...

  3. linux命令竖是什么,linux 管道命令 竖线 ‘ | ’

    管道符号,是unix功能强大的一个地方,符号是一条竖线:"|", 用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为comm ...

  4. Linux Shell重定向 管道命令 grep搜索 awk编程 sed文件操作高阶函数

    在编程中如果能够熟悉shell高阶语法,将对我们进阶为高级程序员有很大的帮助,本文将从Shell重定向 管道命令 awk编程 sed等方面展开介绍. 作者:有勇气的牛排 文章目录 1 shell重定向 ...

  5. Linux管道命令之cut和grep

    Linux管道命令一:cut,grep(选取命令) 这是介绍管道命令的第一篇博客,所以有必要说说什么是管道命令 在linux操作系统的日常使用中,经常会有需要对有 standard output 进行 ...

  6. Linux管道命令——《鸟哥的Linux私房菜》笔记

    Linux管道命令--<鸟哥的Linux私房菜>笔记 0 前言 看完书之后,总感觉不记录下来的话,很快就会忘了,然后又需要重新到处翻书找资料,所以还是把内容记录下来,方便以后复习.本文大部 ...

  7. 7.Linux文件管理命令---grep:查找字符串

    7.Linux文件管理命令-grep:查找字符串 文章目录 Linux文件管理命令 grep:查找字符串 1.匹配模式选择 2.杂项 3.输入控制 4.文件控制 练习案例 Linux文件管理命令 gr ...

  8. linux中的管道定义,Linux 管道命令是什么?

    Linux管道命令是"|",其作用是用来连接多条指令,前一条指令的输出流会作为后一条指令的操作对象,其命令格式为"指令1 | 指令2 | -",该命令的后一条指 ...

  9. 数据流重定向和管道命令, grep, tr,sort, wc, cut,split,tee,sleep(shell 02)

    主要内容 1.标准输入输出和错误 2.管道命令和 grep, tr,sort, wc, cut,split,tee,sleep 标准输入输出和错误 标准输入(stdin) 是指令数据的输入,代码为0, ...

最新文章

  1. 人脸检测--S3FD: Single Shot Scale-invariant Face Detector
  2. CentOS6.4安装nginx1.4
  3. 2017各银行贷款利息表及P2P平台贷款利率比较
  4. 切换ubuntu启动方式 命令行/图形界面
  5. 中国香港地区 DDoS- botnet 态势分析
  6. Scala中class与object区别
  7. Python爬虫教程:requests模拟登陆github
  8. 北京理工大学计算机系郭伟,【记忆辉煌2014】品学兼优榜样——郭伟(2012级研究生)...
  9. 利用ACS实现AAA服务的搭建
  10. php3.2 之文件上传,多文件上传
  11. github电脑壁纸_这可能是2020年最好的电脑壁纸软件推荐文章!
  12. Android字节码ASM插桩
  13. 知到计算机绘图网课答案,计算机绘图知到网课答案
  14. python ttk style_python – 关于使用ttk.Style()的问题?
  15. WordPress编辑器支持pdf上传
  16. 数据分析师成长路径-第一阶段
  17. 【Java】Spring 教程
  18. FD.IO-VPP研究及使用四(Qos策略)
  19. 计算机屏幕太亮怎么调,电脑屏幕太亮太刺眼了怎么调整
  20. SQL查询初学者指南读书笔记(四)where从句

热门文章

  1. 网易2017春招笔试——集合
  2. 两全险的主险是什么意思?
  3. 经典文献阅读之--PL-SLAM(点线SLAM)
  4. Nginx运行控制虚拟主机和访问控制
  5. 【卡尔曼滤波介绍与原理解析】
  6. 【开源】Easy系列开源与免费流媒体音视频方案汇总(持续更新)
  7. Vite + Vue3 项目中,使用 vw/vh 适配移动端,并通过 Android Studio 打包
  8. 此图形驱动程序无法找到兼容的图形…
  9. 【windows——高效工作】写作篇
  10. Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster