sed,grep,awk以及一些正則

2021-07-14 02:36:28 字數 2110 閱讀 8525

記錄一些會用到的sed,grep,awk以及一些正則,省得每次都重新寫.

ipv4正規表示式:

^((25[0-5]|2[0-4]

\d|[01]?\d

\d?)\.)(25[0-5]|2[0-4]

\d|[01]?\d

\d?)$

ipv6正規表示式

^([\da-fa-f0-9]

(:))

[\da-fa-f0-9]

$

sed 在匹配行前新增內容

sed -i

'/matched keyword/i\new inserted line' myfile.txt

sed 在匹配行後新增內容

sed -i

'/matched keyword/a\new inserted line' myfile.txt

sed 在匹配行前新增內容,只匹配第一次

sed -i "/matched keyword/" myfile.txt
sed 在匹配行後新增內容,只匹配第一次

sed '0,/matched keyword/s//matched keyword\nnew inserted line/' myfile.txt
sed 在指定內容後新增

sed '/bridge-utils-1.2-/a abc' install.log
通過awk過濾出某個關鍵字作為grep的引數使用,並把grep的結果高亮顯示

awk '' /tmp/test.txt | xargs -n

1-i pattern grep -rn pattern socket_msg.

log--color=auto

awk分割多個

awk -f",;|[,;]"

''file

awk 列計算

awk 'beginend'

grep多個,或(or)操作

grep -e

'123|abc' filename

grep多個,與(and)操作

grep -e 'pattern1.*pattern2' filename  

當然,也可以多次grep

記憶體前10的程序

ps auxw|head -

1;ps auxw|sort -rn

-k4|head -

10

通過sed給nagios主機批量新增監控服務

利用sed給可以檔案的指定內容後追加內容,實現批量新增,示例以_graphiteprefix load做標記,把要新增的監控配置拆分成一行行新增,注意新增順序,以及配置檔案的路徑,要保證新增後書寫正確。

sed -i '/_graphiteprefix  load/a \    check_command       check_nrpe!check_iptables' /usr/local/nagios/etc/hosts/*.cfg

sed -i '/_graphiteprefix load/a \ service_description iptables' /usr/local/nagios/etc/hosts/*.cfg

sed -i '/_graphiteprefix load/a \ host_name 172.16.93.228' /usr/local/nagios/etc/hosts/*.cfg

sed -i '/_graphiteprefix load/a \ use generic-service' /usr/local/nagios/etc/hosts/*.cfg

sed -i '/_graphiteprefix load/a \define service' /usr/local/nagios/etc/hosts/*.cfg

dumpsys camera 以及一些命令

dumpsys media.camera android 4.3引入的wm工具 wm命令及用法 系統說明 usage wm subcommand options wm size reset wxh wm density reset density wm overscan reset left,top...

sqlmod以及一些基礎

sql mode ansi模式 寬鬆模式,對插入資料進行校驗,如果不符合定義型別或長度,對資料型別調整或截斷儲存,報warning警告。traditional模式 嚴格模式,當向mysql資料庫插入資料時,進行資料的嚴格校驗,保證錯誤資料不能插入,報error錯誤。strict trans tabl...

Shell程式設計以及一些概念

shell解析器 解析shell指令碼,檢視 cat etc shellscentos預設的解析器是 bash 列印系統預設的shell解析器 echo shell shell是什麼是命令,類似windows的dos命令 又是一門程式語言,裡面含有變數 函式 邏輯控制語句等 shell指令碼是什麼s...