Linux中几个正则表达式的用法

2022-09-21 11:23:52 浏览数 (1)

正则表达式就是用于匹配每行输入的一种模式,模式是指一串字符序列。拥有强大的字符搜索功能。也非常方便的搜索过滤出我们想要的内容。

Linux系统:

CentOS Linux release 8.1.1911 (Core)

1、找出 ifconfig “网卡名” 命令结果中本机的 IPv4 地址

代码语言:javascript复制
ifconfig | head -n 2 |tail -1 |tr -s " " |cut -d" " -f3

2、查出分区空间使用率的最大百分比值

代码语言:javascript复制
df |tr -s " " |cut -d" " -f5

3、查出用户 UID 最大值的用户名、UID 及 shell 类型

代码语言:javascript复制
cat /etc/passwd | cut -d: -f1,3,7| sort -nt: -k2 |tail -n 1

4、查出 /tmp 的权限

代码语言:javascript复制
stat /tmp | head -n 4 |tail -n 1|cut -c10-13

5、显示 CentOS8 上所有系统用户的用户名和 UID

代码语言:javascript复制
cat /etc/passwd |cut -d: -f1,3 | egrep -v "[0-9]{4,}"

6、显示三个用户 root、linuxmi、mi 的 UID 和默认 shell(A8代替)

代码语言:javascript复制
cat /etc/passwd |egrep "^(root|A8)" |cut -d: -f1,3

7、使用 egrep 取出 /etc/rc.d/init.d/functions 中显示文件中符合条件的字符

代码语言:javascript复制
echo /etc/rc.d/init.d/functions | egrep "[a-z]$"

8、使用egrep取出上面路径的目录名

代码语言:javascript复制
echo /etc/rc.d/init.d/functions | egrep "/.*/"

9、统计 last 命令中以 root 登录的每个主机IP地址登录次数

10、利用扩展正则表达式分别表示0-9、10-99、100-199、200-249、250-255

代码语言:javascript复制
echo {1..255} |
egrep "<[0-9]>"
代码语言:javascript复制
egrep "<1[0-9]>"
代码语言:javascript复制
egrep "<1[0-9][0-9]>"
代码语言:javascript复制
egrep "<2[0-4][0-9]>"
代码语言:javascript复制
egrep "<25[0-5]>"

11、显示 ifconfig 命令结果中所有 IPv4 地址

代码语言:javascript复制
ifconfig |egrep "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}"

简单点来说,正则表达式是对一组正在处理的文本的描述。

0 人点赞