仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 593|回复: 8
打印 上一主题 下一主题

[其他Linux] linux教程之linux下行过滤东西grep详解

[复制链接]
第二个灵魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 11:21:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
经常看到有人问用什么版本的linux好,其实只要你认真学习无论什么版本都挺好的。
grep命令是linux下的行过滤工具,其参数单一,上面就逐一先容个个参数的感化,但愿对人人有所匡助。
  grep--printlinesmatchingapattern(将切合款式的该行列出)
  ◎语法:grep[options]
  PATTERN[FILE...]
  grep用以在file内文中比对绝对应的部分,或是当没有指定档案时,
  由尺度输出中往比对。在预设的情形下,grep会将切合款式的那一行列出。
  别的,另有两个程序是grep的变更型,egrep及fgrep。
  个中egrep就同等于grep-E,fgrep同等于grep-F。
  ◎参数
  1.-ANUM,--after-context=NUM
  除列出切合行以外,而且列出后NUM行。
  example:$grep-A1pandafile
  (从file中征采有panda款式的行,并显现该行的后1行)
  2.-a或--text
  grep底本是征采笔墨文件,若拿二进制的档案作为征采的方针,
  则会显现以下的讯息:Binaryfile二进制文件名matches然后停止。
  若加上-a参数则可将二进制档案视为文本文件征采,
  相称于--binary-files=text这个参数。
  example:(从二进制档案mv中往征采panda款式)
  (毛病!!!)
  $greppandamv
  Binaryfilemvmatches
  (这暗示此档案有match的地方,详见--binary-files=TYPE)
  $
  (准确!!!)
  $grep-apandamv
  3.-BNUM,--before-context=NUM
  与-ANUM绝对,但这此参数是显现除切合行以外
  并显现在它之前的NUM行。
  example:(从file中征采有panda款式的行,并显现该行的前1行)
  $grep-B1pandafile
  4.-C[NUM],-NUM,--context[=NUM]
  列出切合行以外并列出高低各NUM行,默许值是2。
  example:(列出file中除包括panda款式的行外并列出其高低2行)
  (若要改动默许值,间接改动NUM便可)
  $grep-C[NUM]pandafile
  5.-b,--byte-offset
  列出款式之前的内文统共有几byte..
  exemple:$grep-bpandafile
  显现了局相似于:
  0:panda
  66:pandahuang
  123:panda03
  6.--binary-files=TYPE
  此参数TYPE预设为binary(二进制),若以一般体例征采,只要2种了局:
  1.如有切合的中央:显现Binaryfile二进制文件名matches
  2.若没有切合的中央:甚么都没有显现。
  若TYPE为without-match,碰到此参数,
  grep会以为此二进制档案没有包括任何征采款式,与-I参数不异。
  若TPYE为text,grep会将此二进制文件视为text档案,与-a参数不异。
  Warning:--binary-files=text若输入为终端机,大概会发生一些不用要的输入。
  7.-c,--count
  不显现切合款式行,只显现切合的总行数。
  若再加上-v,--invert-match,参数显现不切合的总行数。
  8.-dACTION,--directories=ACTION
  若输出的档案是一个材料夹,利用ACTION去向理这个材料夹。
  预设ACTION是read(读取),也就是说此材料夹会被视为一样平常的档案;
  若ACTION是skip(略过),材料夹会被grep略过:
  若ACTION是recurse(递回),grep会往读取材料夹下一切的档案,
  此相称于-r参数。
  9.-E,--extended-regexp
  接纳划定规矩暗示式往注释款式。
  10.-ePATTERN,--regexp=PATTERN
  把款式做为一个partern,一般用在制止partern用-入手下手。
  11.-fFILE,--file=FILE
  事前将要征采的款式写进到一个档案,一行一个款式。
  然后接纳档案征采。
  空的档案暗示没有要征采的款式,因而也就不会有任何切合。
  ex:(newfile为征采款式文件)
  $grep-fnewfilefile
  12.-G,--basic-regexp
  将款式视为基础的划定规矩暗示式注释。(此为预设)
  13.-H,--with-filename
  在每一个切合款式行前加上切合的文件称号,如有路径会显现路径。
  ex:(在file与testfile中征采panda款式)
  $grep-Hpandafile./testfile
  file:panda
  ./testfile:panda
  $
  14.-h,--no-filename
  与-H参数相类
12下一页


功能实在太强了,在配合exec参数或者通过管道重定向到xargs命令和grep命令,可以完成非常复杂的操作,如果同样的操作用图形界面的工具来完成,恐怕要多花十几陪的时间。
第二个灵魂 该用户已被删除
沙发
 楼主| 发表于 2015-1-16 12:34:49 | 只看该作者

linux教程之linux下行过滤工具grep详解

学习linux,就意味着更快的开发效率,等更多关于软件本身或者说操作系统本身的理解。
似,但在输入时不显现路径。</P>  15.--help
  发生冗长的help讯息。
  16.-I
  grep会强迫以为此二进制档案没有包括任何征采款式,
  与--binary-files=without-match参数不异。
  example:$grep-Ipandamv
  17.-i,--ignore-case
  疏忽巨细写,包括要征采的款式及被征采的档案。
  example:$grep-ipandamv
  18.-L,--files-without-match
  不显现寻常一样平常的输入了局,反而显现出没有切合的文件称号。
  19.-l,--files-with-matches
  不显现寻常一样平常的输入了局,只显现切合的文件称号。
  20.--mmap
  假如大概,利用mmap体系呼唤往读取输出,而不是预设的read体系呼唤。
  在某些情况,--mmap能发生较好的效能。但是,--mmap
  假如运作中档案延长,或I/O毛病产生时,
  大概形成不决义的举动(包括coredump),。
  21.-n,--line-number
  在显现行前,标下行号。
  ex:$grep-npandafile
  显现了局类似于下:
  行号:切合行的内容
  22.-q,--quiet,--silent
  不显现任何的一样平常输入。请参阅-s或--no-messages
  23.-R-r,--recursive
  递回地,读取每一个材料夹下的一切档案,此相称于-drecsuse参数。
  24.-s,--no-messages
  不显现关于不存在或没法读取的毛病讯息。
  小注:不像GNUgrep,传统的grep不切合POSIX.2协定,
  由于缺少-q参数,且他的-s参数体现像GNUgrep的-q参数。
  ShellScript偏向将传统的grep移植,避开-q及-s参数,
  且将输入限定到/dev/null。
  POSIX:界说UNIX及UNIX-like体系必要供应的功效。
  25.-V,--version
  显现出grep的版本号到尺度毛病。
  当您在报答有关grep的bugs时,grep版本号是必需要包括在内的。
  26.-v,--invert-match
  显现除征采款式行以外的全体。
  27.-w,--word-regexp
  将征采款式视为一个字往征采,完整切合该"字"的行才会被列出。
  28.-x,--line-regexp
  将征采款式视为一行往征采,完整切合该"行"的行才会被列出

</p>
上一页12


由于在linux中,用户权限很大,做任何事情都很自由,所以,你往往需要知道你做的每一步在干什么。
乐观 该用户已被删除
板凳
发表于 2015-1-18 15:41:44 | 只看该作者
然我们对Linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。
老尸 该用户已被删除
地板
发表于 2015-1-27 09:10:27 | 只看该作者
选择交流平台,如QQ群,网站论坛等。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-5 10:57:19 | 只看该作者
Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。
因胸联盟 该用户已被删除
6#
发表于 2015-2-11 12:30:32 | 只看该作者
编程学习及开发,Linux是免费,开源的操作系统,并且可开发工具相当多,如果您支持自由软件,一定要同广大热爱自由软件人士一同为其不懈努力。
飘飘悠悠 该用户已被删除
7#
发表于 2015-3-11 04:44:35 | 只看该作者
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
柔情似水 该用户已被删除
8#
发表于 2015-3-17 21:22:58 | 只看该作者
另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。
admin 该用户已被删除
9#
发表于 2015-3-25 03:56:03 | 只看该作者
通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 05:16

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表