导航:首页 > 净水问答 > linux命令正则过滤

linux命令正则过滤

发布时间:2022-02-16 12:37:28

① linux ls正则表达式

ls就是默认排序的。

所以:


ls只支持通配符,不支持正则,所以单纯用ls是不能实现的。

一些正则过滤操作需要结合支持正则的命令如grep、sed或awk。

例如:ls | grep "[0-9]$"

得到:aaa1 aaa2 aaa3

② 请问 linux命令用dpkg -l列出的信息,怎么用正则表达式排除以ii开头的所有行

dpkg -l | grep -v '^ii'
排除所有以两个小写i字母开头的行

③ 怎么用Linux 正则表达式过滤出IP地址

||用正则表达式提取网址的方式如下: 用ifconfig来提取 ifconfig eth0|专grep "inet addr"|awk '{print $2}'|awk -F: '{print $2}'192.168.10.1 用ip addr来提龋属 ip addr | grep -Po '[^ ]+(?=/\d)'

④ Linux命令详解之正则表达式


特殊字符
^
行首
$
行尾
.
任意一个字符
[]
内含字符范围,加^表示反向字符范围,在该范围内任何一个字符都可以匹配
(若要恢复普通用法,可在其前加转义字符/)
[:alnum:]
字母与数字字符
[:alpha:]
字母
[:ascii:]
ascii字符
[:blank:]
空格或制表符
[:cntrl:]
ascii控制字符
[:digit:]
数字
[:graph:]
非控制、非空格字符
[:lower:]
小写字母
[:print:]
可打印字符
[:punct:]
标点符号字符
[:space:]
空白字符,包括垂直制表符
[:upper:]
大写字母
[:xdigit:]
十六进制数字
其他字符
?
至多匹配一次
*
必须匹配0次或多次
+
必须匹配1次或多次
{n}
必须匹配n次
{n,}
必须匹配n次或n次以上
{n,m}
必须匹配在n到m次之间,包括n和m
示例
查找当前目录下所有以一位数字命名且以.txt结尾的文件,并进行显示
find
.-name
[[:digit:]]/.txt
-ok
ls
-l
{}
/;
查找所有以.txt结尾的文件并显示
find
.
-name[[:alnum:]]*/.txt
-ok
ls
-l
{}
/;

⑤ 在linux系统如何grep过滤中,不包含某些字符

1、linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
2、格式
grep[options]
3、主要参数
[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\:忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求。
。:所有的单个字符。
* :有字符,长度可以为0。
4、grep命令使用简单实例:
$ grep ‘test’d*
显示所有以d开头的文件中包含test的行。
$ grep ‘test’aa bb cc
显示在aa,bb,cc文件中匹配test的行。
$ grep‘[a-z]\{5\}’ aa
显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

⑥ 求linux上的正则表达式

[0-9a-z]{8,}.*|[a-zA-Z]{8,}.*|[0-9A-Z]{8,}.*|[0-9a-zA-Z]{8,}.*

只会写这种丑的,有大神么?

⑦ linux SHELL命令 正则表达式 替换问题!

看晕了 坐等详解

⑧ linux 正则表达式怎么匹配

一.linux文本查找命令
在说linux正规表达式之前,还介绍下linux中查找文本文件常用的三个命令:
1.grep:最早的文本匹配程序,使用POSIX定义的基本正则表达式(BRE)来匹配文本。
2.egrep:扩展式grep,其使用扩展式正规表达式(ERE)来匹配文本。
3.fgrep:快速grep,这个版本匹配固定字符串而非正则表达式。并且是唯一可以并行匹配多个字符串的版本。
如下简单的介绍grep命令:
语法格式:
grep[options...]pattern-spec[files...]
用途:
匹配一个或多个模式的文本行。
options:
-E:使用扩展正则表达式进行匹配,grep-E或取代egrep命令。
-F:使用固定字符串进行匹配,grep-F或取代传统的fgrep命令。
-e:通常第一个非选项的参数认为是要匹配的模式,也可以同时提供多个模式,只要将其放入单引号,并用换行字符分隔他们。
模式以减号开头时,为防止混淆其为选项,-e选项说明其后的参数为模式,即使他以减号开头。
-f:从pat-file文件读取模式作为匹配。
-i:模式匹配时忽略大小写差异。
-l:列出匹配模式的文件名称,而不是打印匹配的行。
-q:静默的,如果匹配成功,不将匹配的行输出到标准输出;否则即是不成功。
-s:不显示错误信息,通常与-q并用。
-v:显示不匹配模式的行。
说明:可以同时查找多个文件中的内容,当指定多个文件时,每个显示出的文件行前会有文件名加一个冒号标识其来自哪个文件。
可以使用多个-e或-f选项,建立要查找的模式列表。
二.正则表达式简要介绍
1.正则表达式的组成
(1).一般字符:没有特殊意义的字符
(2).特殊字符(meta字符):元字符,有在正则表达式中有特殊意义
2.如下讲下正则表达式中的常见meta字符
(1).POSIXBRE与ERE中都有的meta字符:
:通常用于打开或关闭后续字符的特殊含义,如(...)与{...}
.:匹配任何单个字符(除NUL)
*:匹配其前的任何数目或没有的单个字符,例:.表示任一字符,则.*匹配任一字符的任意长度
^:匹配紧接着的正则表达式,BRE中仅在正则表达式的开头有特殊的含义,ERE中在任何位置都有特殊含义
$:匹配前面的正则表达式,在字符串或者行结尾处。BRE中仅在正则表达式的结尾处有特殊的含义,ERE中在任何位置都有特殊含义
[]:匹配方括号内的任一字符,其中可用连字符(-)指的连续字符的范围;^符号苦出现在方括号的第一个位置,则表示匹配不在列表中的任一字符,
(2).POSIXBRE中才有的字符:
{n,m}:区间表达式,匹配在它前面的单个字符重现的次数区别。{n}指重现n次;{n,m}指重现n至m次;
():保留空间,可以将最多9个独立的子模式存储在单个模式中。如(ab).*1:
指匹配ab组合的两次重现,中间可存在任意数目的字符。
:重复在(与)方括号内第n个子模式至此点的模式。
(3).POSIXERE中才有的字符:
{n,m}:与BRE的{n,m}功能相同
+:匹配前面正则表达式的一个或多个扩展
?:匹配前面正则表达式的零个或一个扩展
|:匹配|符号前或后的正则表达式
():匹配方括号括起来的正则表达式群
(4).方括号([])表达式
4.1.字符集[::]
标识字符集,有如下几种:
[::alnum]
:数字字符
[:digit:]
:数字字符
[:punct:]
:标点符号字符
[:alpha:]
:字母字符
[:graph:]
:非空格字符
[:space:]
:空格字符
[:blank:]
:空格与定位字符
[:lower:]
:小写字母字符
[:upper:]
:大写字母字符
[:cntrl:]
:控制字符
[:print:]
:可显示的字符
[:xdigit:]
:16进制数字
4.2.排序符号
指将多个字符视为一个符号,如[.ch.]即将ch视为一个符号
4.3.等价字符
认为多个字符相等,如[=e=]在法文的locale里,可匹配于多种与e相似的字符,此处不再列出。
说明:这三种构造除其自身的方括号之外,还必须使用额外的方括号括起来。
例:[[:alpha:]!]:匹配任一英文字母或感叹号。
[[.ch.]:匹配ch排序元素,而不匹配单独的字母c或h.
3.简单正规表达式匹配案例
china:匹配此行中任意位置有china字符的行
^china:匹配此以china开关的行
china$:匹配以china结尾的行
^china$:匹配仅有china五个字符的行
[Cc]hina:匹配含有China或china的行
Ch.na:匹配包含Ch两字母并且其后紧跟一个任意字符之后又有na两个字符的行
Ch.*na:匹配一行中含Ch字符,并且其后跟0个或者多个字符,再继续跟na两字符
二.实例
如下通过常用实例来学习BRE和ERE匹配,源文件url.txt内容如下:
www..comhttp://www..comhttps://www..comhttp://wwwcom.com
1.url匹配
匹配以http或者https开头,并且其后为:并且含有.的串
BRE匹配:
grep'^https{0,1}.*..*'url.txt
ERE匹配:
grep-E'^https?.*..*'url.txt
匹配结果如下:
http://www..comhttps://www..com
2.Email匹配
示例文件内容为:
[email protected]@[email protected]@gmail.com
@@.com
匹配以字母数字或者下划线开头的多个字符,其后有一个@之后有多个字母数字或者下划线,其中有一个.号
grep'^[[:alpha:][:digit:]_]*@[[:alpha:][:digit:]]*..*'email.txt
匹配结果:
[email protected]@[email protected]
先到这里,后续再接着写。

⑨ Linux命令行大全:什么是正则表达式

前面我们已经接触过命令行提供的许多特性和工具,并且也遇到过一些相当神秘的shell特性及命令,比如shell扩展和引用、键盘快捷键和命令历史记录等,更不用提vi编辑器了。正则表达式也延续了这种传统,而且可以说是众多特性中最神秘的一个(该说法应该会持有争议)。当然,并不是说这些特性不值得大家花时间去学习。恰恰相反,熟练掌握这些用法会给人意想不到的效果,尽管它们的全部价值可能不会立即体现出来。

⑩ 在linux终端中 怎样利用正则表达式 进行文本内容的替换

一般用sed命令
例如
sed 's/test/mytest/g' 1.txt > 2.txt

阅读全文

与linux命令正则过滤相关的资料

热点内容
丰田雷凌12汽油滤芯怎么更换 浏览:427
手机mac过滤后不能上网 浏览:930
净水滤芯内小圆颗粒起什么作用 浏览:853
油水净化器怎么用 浏览:179
反渗透压力表怎么接upvc 浏览:781
农村污水垃圾处理图片 浏览:326
美林过滤 浏览:986
怎么给女朋友买空气滤芯 浏览:371
07款大众帕萨特领驭空调滤芯怎么换 浏览:400
污水管网政务公开 浏览:308
废水ph值范围 浏览:749
蒸馏水可以再烧开喝吗 浏览:55
有不用水泵的反渗透膜吗 浏览:399
净水器三通漏水怎么弄 浏览:440
树脂工艺品制作过程小件超漂亮 浏览:83
swift过滤非数字字符 浏览:308
贝朗机超滤量最小值 浏览:382
饮水机水壶溢水怎么办 浏览:739
环保公司污水怎么处理 浏览:209
如何去掉水中的水垢 浏览:302