linux-正則表示法

類似于編程的正則表達(dá)式

[a-z],[A-Z],[0-9][^非] ^開(kāi)頭$結(jié)尾 .任意一個(gè)字符 *重復(fù)前一個(gè)字符(0或多個(gè))

'\{重復(fù)次數(shù)n\}' ?'\{重復(fù)次數(shù)n1,\}' ? '\{重復(fù)次數(shù)n1,n2\}'

? :0-1,+ :1~,| :or,(分組)

格式化打印:printf

printf '%10s %5i %5i %5i %8.2f \n'`cat filename.txt | grep -v name`

sed: sed [-nefr] [動(dòng)作]

動(dòng)作說(shuō)明: [n1[,n2]]function

n1, n2 :不見(jiàn)得會(huì)存在,一般代表『選擇進(jìn)行動(dòng)作的行數(shù)』,舉例來(lái)說(shuō),如果我的動(dòng)作

是需要在 10 到 20 行之間進(jìn)行的,則『 10,20[動(dòng)作行為] 』

function 有底下這些咚咚:

a :新增, a 的后面可以接字符串,而這些字符串會(huì)在新的一行出現(xiàn)(目前的下一行)~

c :取代, c 的后面可以接字符串,這些字符串可以取代 n1,n2 之間的行!

d :刪除,因?yàn)槭莿h除啊,所以 d 后面通常不接任何咚咚;

i :插入, i 的后面可以接字符串,而這些字符串會(huì)在新的一行出現(xiàn)(目前的上一行);

p :打印,亦即將某個(gè)選擇的數(shù)據(jù)印出。通常 p 會(huì)與參數(shù) sed -n 一起運(yùn)作~

s :取代,可以直接進(jìn)行取代的工作哩!通常這個(gè) s 的動(dòng)作可以搭配 正規(guī)表示法!例如 1,20s/old/new/g 就是啦!

eg:刪除2-5行: nl /etc/passwd | sed '2,5d'

取包含inet關(guān)鍵字的那一行,只取IP地址(其余使用sed 's替換為空' ):

ifconfig eth0 | grep 'inet ' |sed 's/.*addr://g'|sed 's/Bcast:.*//g'

awk: awk '條件類型1{動(dòng)作a;動(dòng)作b;...} 條件類型2{動(dòng)作c..}... ' filename

eg: last |awk '{printf $1 "\t" $3"\n"}'last | awk '{printf $1 "\t lines:"NR"\t columes:"NF"\n"}'

第三欄小于 10 以下的數(shù)據(jù),并且僅列出賬號(hào)與第三欄:

cat /etc/passwd | awk '{FS=":"} $3 < 10 {printf $1 "\t" $3 "\n"}' ? --第二行開(kāi)始

cat /etc/passwd | awk 'BEGIN{FS=":"} $3 < 10 {printf $1 "\t" $3 "\n"}' ?--第一行開(kāi)始

awk執(zhí)行流程:

1. 讀入第一行,并將第一行的資料填入 $0, $1, $2.... 等變數(shù)當(dāng)中;

2. 依據(jù) "條件類型" 的限制,判斷是否需要進(jìn)行后面的 "動(dòng)作";

3. 做完所有的動(dòng)作與條件類型;

4. 若還有后續(xù)的『行』的數(shù)據(jù),則重復(fù)上面 1~3 的步驟,直到所有的數(shù)據(jù)都讀完為止。

awk變量:

變量名稱

代表意義

NF

每一行 ($0) 擁有的字段總數(shù)

NR

目前 awk 所處理的是『第幾行』數(shù)據(jù)

FS

目前的分隔字符,預(yù)設(shè)是空格鍵

文檔比較:diff,cmp

diff: diff [-biB] srcFilename destFilename ?比較出所有的不同

eg: 文檔比較:diff /etc/passwd /tmp/test/passwd

目錄比較:diff /etc /tmp/test

cmp: cmp [-s]?srcFilename destFilename ? 輸出第一個(gè)不同點(diǎn) 行列

eg: 文檔比較:cmp?/etc/passwd /tmp/test/passwd

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • linux資料總章2.1 1.0寫(xiě)的不好抱歉 但是2.0已經(jīng)改了很多 但是錯(cuò)誤還是無(wú)法避免 以后資料會(huì)慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,179評(píng)論 2 33
  • sed工具簡(jiǎn)介 用法:sed [-nefri] 動(dòng)作參數(shù):-n:使用安靜模式(Silent)模式,一般在sed的...
    Bloo_m閱讀 1,071評(píng)論 0 1
  • 知識(shí)點(diǎn) sort uniq cut wc sed命令 awk命令 crontab定時(shí)器 sort sort 命令對(duì)...
  • awk: grep,sed,awk grep:文本過(guò)濾 sed:文本編輯 awk:文本格式化工具; 1 什么是aw...
    木林森閱讀 1,895評(píng)論 0 16
  • 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 一、進(jìn)制 概念:進(jìn)制是一種計(jì)數(shù)方式,是數(shù)值的表現(xiàn)形式 4種主...
    LeaderBiao閱讀 312評(píng)論 0 2

友情鏈接更多精彩內(nèi)容