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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

linux搜索文件内容含有星号,文本内容查找grep、文件查找find、正则匹配

發(fā)布時(shí)間:2024/1/23 linux 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux搜索文件内容含有星号,文本内容查找grep、文件查找find、正则匹配 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、文本內(nèi)容查找工具 grep

grep?? egrep (文本過(guò)濾)?? fgrep (不支持正則)

對(duì)文本的內(nèi)容按照指定的匹配模式基于行來(lái)進(jìn)行篩選

格式???? grep [選項(xiàng)] 模式 文件

選項(xiàng):

-v:反向匹配,顯示不能被模式匹配到的行

-o:僅匹配被模式匹配到的字符串,而非整行

-q:靜默模式

-i:不區(qū)分大小寫,ignore-case

-E:支持?jǐn)U展(相當(dāng)于egrep)  grep -E = egrep

根據(jù)正則表達(dá)式進(jìn)行匹配查找

1、點(diǎn) . ??:? 任意單個(gè)字符

2、[ ]? : 指定[ ]范圍內(nèi)的任意單個(gè)字符

[0-9],[[:digit:]] 匹配任意單個(gè)數(shù)字

[a-z],[[:lower:]] 匹配任意單個(gè)小寫字母

[A-Z],[[:upper:]] 匹配任意單個(gè)大寫字母

所有的字母:[[:alpha:]]

字母+數(shù)字:[[:alnum:]]

空格:[[:space:]](空格不等同于空行)

標(biāo)點(diǎn)符號(hào)字符:[[:punct:]]

[^]: 指定范圍外的任意單個(gè)字符

3、次數(shù)匹配:用來(lái)指定匹配其前面的字符的次數(shù)

*? : 星號(hào)前面的一個(gè)字符出現(xiàn)0次或n次

.*? : 匹配任意長(zhǎng)度的任意字符

\?? : 問(wèn)號(hào)前面的一個(gè)字符出現(xiàn)0次或者1次  \轉(zhuǎn)義

\+? : 前面字符至少1次? (1次到n次)

\{m\}? : 匹配m次

\{m,n\}? : 至少m次,至多n次

\{m,\}? :? 至少m次

\{,n\}? :? 至少0次,至多n次

4、位置錨定:用于指定字符出現(xiàn)的位置

^?? : 錨定行首 ^char

$?? : 錨定行尾 char$

^$? : 空白行

5、單詞的位置錨定

\

char\> ?: 錨定單詞詞尾

6、egrep:支持?jǐn)U展正則表示({} , (), ?, +可以不用轉(zhuǎn)義) 等價(jià)于:grep -E

二、管道操作

管道:

Linux:

程序=指令+數(shù)據(jù)

使用目的單一的小程序

組合小程序完成復(fù)雜的任務(wù)

指令1 | 指令2 | 指令3

| 左邊命令的輸出作為 | 后邊命令的輸入

Linux 中不是所有命令都支持管道,不支持管道的命令:cd? rm? find ...

三、文本內(nèi)容處理命令 wc, tr, cut, sort

1、wc:即 word count

ctrl+d 提交

行 單詞數(shù) 字節(jié)數(shù)

wc[option][file]...

-l:統(tǒng)計(jì)行數(shù)

-c:統(tǒng)計(jì)字節(jié)數(shù)

-w:統(tǒng)計(jì)單詞數(shù)

2、tr:轉(zhuǎn)換或刪除字符,tr ‘集合1’ ‘集合2’,必須使用管道

轉(zhuǎn)換字符:會(huì)把第一個(gè)字符集的對(duì)應(yīng)轉(zhuǎn)換為第二個(gè)字符集中的對(duì)應(yīng)轉(zhuǎn)換

-d:刪除出現(xiàn)過(guò)的字符集

3、cut:根據(jù)指定的分隔符切片,并顯示出需要顯示的片

-d字符:指定分隔符

-f (field)?? 數(shù)字:指定要顯示的字段

單個(gè)數(shù)字:一個(gè)字段

多個(gè)離散字段:逗號(hào)分隔

多個(gè)連續(xù)字段:-分隔

4、sort:按字符進(jìn)行比較

格式 sort[options] FILE

-f:忽略大小寫

-n:對(duì)數(shù)字進(jìn)行排序

-t:指定分隔符

-k數(shù)字:指定分隔后進(jìn)行排序字段列號(hào)

-u:重復(fù)的行,只顯示一行

-r:倒序排列

例題:查詢用戶,按照編號(hào)從大到小的順序排列,取編號(hào)最大的前5名,列出用戶名和編號(hào)

四、文件查找---------find命令

①:根據(jù)文件名? -name? -iname(忽略大小寫)

②:根據(jù)屬主屬組查找

-user username  根據(jù)屬主查找

-group grpname  根據(jù)屬組查找

可接組合條件 -a而且 -o或者:find /home -user root -a -group root  屬主和屬組都是root的

③:根據(jù)文件類型查找?? -type

④根據(jù)文件的大小來(lái)查找?? -size

⑤根據(jù)時(shí)間戳來(lái)查找? -atime? -mtime?? -ctime (單位天,如果按照-mmin)

五、查到后的處理動(dòng)作

①:打印(默認(rèn))

-print  默認(rèn)

-fls  自定義

把輸出結(jié)果打印到output.txt中

②:查詢屬性信息(類似ls -l)  -ls

③:刪除? -delete

④:后接命令(交互) -ok

⑤:后接命令(不交互) -exec cmd {} \;

六、讓find命令支持管道(xargs命令)

find命令不支持管道,但是可以使用xargs命令強(qiáng)行驅(qū)動(dòng)可以使用管道

總結(jié)

以上是生活随笔為你收集整理的linux搜索文件内容含有星号,文本内容查找grep、文件查找find、正则匹配的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。