十二试Ubuntu-正则表达式

Ubuntu 16.04 LTS发布日期已正式确定_Linux新闻_Linux公社-Linux系统门户网站

Ubuntu 16.04要来了,还是长期稳定版的,又有的玩了。。。


最新闲来无事逛逛知乎,发现大家都推荐windows下一款小工具——everything(Everything Search Engine )。这是一个搜索小工具,针对NTFS格式的磁盘,无论磁盘大小文件大小都可以做到秒搜。而知乎上各位网友推荐这个小工具的时候,不约而同地都提及了支持正则表达式。那么到底什么是正则表达式?

正则表达式是一种符号表示法,被用来识别文本模式。许多命令行工具和大多数的编程语言都支持正则表达式,以此来帮助解决文本操作问题。

如此看来,正则表达式在搜索类软件中有很多应用。

这次介绍的是grep程序(global regular expression print),本质上,grep 程序会在文本文件中查找一个指定的正则表达式,并把匹配行输出到标准输出。

$ ls /usr/bin | grep zip

以上这个命令会列出位于目录/usr/bin 中,文件名中包含子字符串“zip”的所有文件。

grep 程序以如下方式来接受选项和参数:

grep [options] regex [file...]

这里的 regx 是指一个正则表达式。

Option 描述

-i 忽略大小写。不会区分大小写字符。也可用 --ignore-case 来指定。

-v 不匹配。通常,grep 程序会打印包含匹配项的文本行。这个选项导致 grep 程序只会不包含匹配项的文本行。也可用--invert-match 来指定。

-c 打印匹配的数量(或者是不匹配的数目,若指定了 -v 选项),而不是文本行本身。也可用 --count 选项来指定。

-l 打印包含匹配项的文件名,而不是文本行本身,也可用--files-with-matches 选项来指定。

-L 相似于 -l 选项,但是只是打印不包含匹配项的文件名。也可用 --files-without-match 来指定。

-n 在每个匹配行之前打印出其位于文件中的相应行号。也可用--line-number 选项来指定。

-h 应用于多文件搜索,不输出文件名。也可用 --no-filename选项来指定。



以上就是grep软件最基础的应用


附上一个现成的Linux上类似everything的搜索神器:liancheng/found - Python - GitHub

十二试Ubuntu-正则表达式_第1张图片

你可能感兴趣的:(十二试Ubuntu-正则表达式)