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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sed 和 awk 的一些用法

發布時間:2025/3/18 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sed 和 awk 的一些用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

1. 截取test 文件指定字段

test文件內容: ert fff ** [abcfd] 123 324 444 [rty] ** fgfgf

截取下面段: [abcfd] 123 324 444 [rty]

2. sed中,使用\u表示大寫,\l表示小寫

  • 把每個單詞的第一個小寫字母變成大寫
  • 把所有小寫變成大寫
  • 大寫變小寫

3. sed在文件中某一行最后添加一個數字

4. sed 刪除某個關鍵字的下一行到最后一行

5. 是使用 sed 打印1到 10 行內包含 某字符串的行

6. 在awk 中使用外部shell 變量

7. awk 合并兩個文件

8. 把一個文件多行連接成一行

9. awk 中 gsub 函數的使用

  • gsub 函數是將正則表達式被匹配到的發生替換.
  • gsub(Regualr expression, subsitution string, target string);

10. awk 截取指定多個域為一行

for ((i=1,n=`awk -F: 'NR==1 {print NF}' ./passwd`;i<=n;i++)); do awk -F: -v i=$i '{printf($i ":");} END{ print "\n"}' ./passwd ;done# 最外層使用 for () do ;done 循環包裹 # for循環結構是 (i=1,n=`awk -F: 'NR==1 {print NF}' ./passwd`;i<=n;i++) # 獲取了 文件的列數, 然后根據列數, 設置 i 的值,# 循環內是獲取 該文件的第 i 列, 然后將該列 輸出為1行

11. grep 或 egre 或 awk 過濾 兩個或多個關鍵詞

grep 'abc|def' file grep -E 'abc|def' file egrep 'abc|def' file awk '/ab|de/' file

12. 使用 awk 編寫生成以下結構文件程序

用 awk 生成下面結構文件(最后列是使用現在時間 格式為YYYMMDDHHMMSS) 各列值如下, 每增加以行增加1 , 共500w 行 1,1,0000000001,0000000001,0000000001,0000000001,0000000001,0000000001,2005100110101 2,2,0000000002,0000000002,0000000002,0000000002,0000000002,0000000002,2005100110101

  • 使用 for 循環加 printf 格式化輸出, 然后用 awk 內建函數 strftime生成時間

  • 可以使用 system 函數調用系統命令

13. awk 用print 打印單引號

14. 把兩個文件中相同的行合并成一行

  • paste 命令 用于將多個文件按照隊列進行合并. 選項:
-d <間隔字符>: 用于指定間隔字符取代合并時用的跳格字符 -s 串列進行合并, 而非水平合并

END

轉載于:https://my.oschina.net/nikoF/blog/2875709

總結

以上是生活随笔為你收集整理的sed 和 awk 的一些用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。