日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux shell编程学习笔记(9)正则表达式

發布時間:2025/4/16 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux shell编程学习笔记(9)正则表达式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是正則表達式

一串符號描述有共同屬性的數據


一串符號:元符號

——正則表達式通常被用來檢索和/或替換那些符合某個模式的文本內容。許多程序設計語言都支持利用正則表達式進行字符串操作。對于系統管理員來講,正則表達式貫穿在我們的日常運維工作中,無論是查找某個文檔,抑或查詢某個日志文件分析其內容,都會用到正則表達式。

——其實正則表達式,只是一種思想,一種表示方法。只要我們使用的工具支持表示這種思想那么這個工具就可以處理正則表達式的字符串。常用的工具有grep, sed, awk

2、正則表達式的語法格式

#grep [選項] ?‘正則表達式’ ? 文件列表 ? ? ?-

#前置命令 ?| grep [選項] ?‘正則表達式

3、正則表達式處理順序:

·以行為處理單位

·對數據按先后順序逐行處理

·處理完當前行后,自動處理下一行,直到末行為止

·默認輸出與表達式匹配的行

4、正則表達式怎么寫

——正則表達式由元字符組成

4.1、基本元字符

1^

——匹配行首

格式:^匹配字符



[root@moni01 shell]# grep ^root /etc/passwd root:x:0:0:root:/root:/bin/bash [root@moni01 shell]#

2$

——匹配行尾

格式:匹配字符$



[root@moni01 shell]# grep /sbin/nologin$ /etc/passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

3.


——匹配任意單個字符。換行符\n 除外


4[]

——匹配范圍內的任意一個字符

——匹配優先












5{}

——限制正則表達式的匹配次數


1{n} 匹配n

2{n,m} 匹配n-m

3{n,} 匹配至少n

匹配空格


6+

——至少匹配一次(一次或多次)


7)?

——最多匹配一次(0次或1次)


9*

——匹配任意次數。(零次到多次)



(10)單詞邊界匹配


1)匹配整個單詞/單詞邊界

如: \broot\b

? ? ? \<root\>

[root@moni01 tmp]# egrep '\broot\b' /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [root@moni01 tmp]#
2)匹配單詞的開頭

如:\broo

? ? ? ? \<roo

3)匹配單詞的結束

如:oot\b

? ? ? ? Oot\>





轉載于:https://blog.51cto.com/huanglianfeng/1365227

總結

以上是生活随笔為你收集整理的linux shell编程学习笔记(9)正则表达式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。