Shell文字過濾

2021-09-22 02:47:45 字數 1887 閱讀 5267

元字元:

^:只匹配行首,如^d匹配drwxr-x--x

$:只匹配行尾,如trouble$:匹配以trouble結尾的所有字元;^$:匹配空行

*:匹配0個或多個

:匹配字元或字串行,中間可以使用'

-','

,'來進行分割,如[1-5]匹配12345, [0-9]匹配0到9, [a-z],[a-za-z],[a-za-z0-9]等

\:遮蔽元字元的特殊含義,如

',",

||,^,

*,+等特殊字元

.:只匹配任意單個字元,如...x..x..x, 匹配drwxr-x--x

pattern\:用來匹配pattern出現的次數,n為次數

pattern\:含義同上,但至少匹配n次

pattern\:含義同上,但pattern出現的次數在n與m之間

find path -options [-print -exec -ok]

-name,如find ./ -name "[a-z]*" -print

-perm,如find . -perm 755 -print

-user,如find `pwd` -user root -print或者find `pwd` -user "root" -print

-group,如find ./ -group root -print

-mtime -n +n, 如改變時間在5天以內的

find /var/ -mtime -5 -print; 改變時間在3天以前的檔案

find /var/ -mtime +3 -print

-atime

-ctime

-size n[c]:查詢檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計, 如大於10m的檔案:

find . -size +10000000c -print

-nogroup

-nouser:find `pwd` -nouser -print

-newer file1 ! -newer file2:查詢比file1新但比file2舊的檔案, 如

find `pwd` -newer "spctab.lis" ! -newer "sp_6_7.lst" -print

-type:查詢某一型別的檔案,b:塊檔案,d:目錄, c:字元裝置檔案,p:管道檔案,l:符號鏈結檔案,f:普通檔案

如:find /etc/ -type d -print:查詢/etc目錄下的資料夾有哪些

-exec或ok來執行shell命令:如find /tmp/ -type f-execls -l {} \;

find /var/log -name "*.log" -mtime +5 -exec rm {} \;

xargs:由於當大量的內容傳遞給exec時,存在溢位問題,所以建議在能找到檔案時使用xargs命令

find ./ -perm -7 -print | xargs chmod o-w

-depth:先匹配所有檔案,再在子目錄中查詢

man find

-c:只輸出匹配行的計數

檢視檔案abc中包含「

[root@oracle11g ab]# grep -c "安裝" abc 

751

-i:不區分大小寫

-h:查詢多檔案時不顯示檔名

-h:顯示檔名

-l:查詢多檔案時只輸出匹配字元的檔名

-n:顯示匹配行及行號

[root@oracle11g ab]# grep -n "scim-tables-0.5.6-7.i386" abc 

742:安裝 scim-tables-0.5.6-7.i386

-s:不顯示不存在或無匹配文字的錯誤資訊

-v:顯示不包含匹配文字的所有行

shell 文字過濾

今天閒著沒事,把以前寫的shell再拿出來看好多都忘記了,於是自己用看了一邊資料 表是單個字元 一行的開始 d以開頭的 1 第三個為1的字元 字元要放在匹配的字元前面 一行的末尾 表示空行 匹配一行乙個字元的 字元要放在匹配的字元後面 匹配任意個字元 包括0個字元 可以遮蔽乙個特殊的字元 pas 這...

shell文字過濾器之grep

grep,sed和awk都是文字處理工具,雖然都是文字處理工具但卻都有各自的優缺點,一種文字處理命令時不能被另乙個完全替換的,否則也不會出現三個文字處理命令了。grep stream editor,文字過濾器,如果僅僅是過濾文字,可使用grep,其效率要比其他的高很多 awk 報告生成器,格式化以後...

shell文字過濾程式(十) cut命令

cut指揮類似至awk,從行內提取的資訊,它是乙個較弱的版本的功能awk。cut命令格式為 cut options filename 當中options有 d 指定與空格和t a b鍵不同的域分隔符。類似於awk的 f f field 指定剪下域數 c list 指定剪下字元數。首先我們來處理按 切...