六周第三次課(3月14日)
阿新 • • 發佈:2018-03-16
linux 筆記 六周第三次課(3月14日)
9.6/9.7 awk
擴展
9.6/9.7 awk
擴展
9.6 awk(上)
把passwd文件拷貝到目錄awk,做實驗。
打印文檔中的某段
打印第1段的用法示例如下:
打印所有段的用法示例如下:
不需要制定分隔符
不制定分隔符,會以空格和空白字符為為空隔符去打印。
創建一個測試文件。
打印第1第3第4段的用法。中間要加逗號。
自定義分隔符為#,自定義的內容要加“”
打印包含某字符或字符串的行
打印含有oo的行,命令如下:
打印第1段含有oo的行,命令如下:
可以分段匹配,比sed強。
awk支持正則表達式。
打印第1段包含1個或多個o的行,命令如下:
打印第1段包含2個或多個o的行,命令如下:
awk不用加脫意字符
可以多個一起寫,示例命令如下:
數學運算表達式
加雙引號會按ASCII碼排序方式進行計算。需求是數字的,不要加雙引號。
打印第7段不等於1000的行,命令如下:
字符串要加上雙引號。
9.7 awk(下)
打印第3段比第4段小的行
打印第3段=第4段的行
兩個條件一起用
內置條件
OFS的用法示例如下:
{}和{}之間寫條件。
加if,在用{}括起來,比較規範。
行號打印出來
每行多少段打印出來
賦值,輸出的結果,分隔符沒有了。
加上OFS,就有分隔符號。
計算第3段的總和。
{}裏是循環,剛開始tot默認是0,第1行第3段+第2行第3段,一直加。
六周第三次課(3月14日)