awk的應用

awk 想要熟練掌握還須要多練習,簡單的處理了兩個小問題,之後再次補充。html

格式化 nginx 日誌輸出nginx

BEGIN {
    FIELDWIDTHS = 100
    printf "%-5s %30-s %18-s %3-s %30-s %30-s \n", "行號", "服務器域名", "服務器 IP", "請求接口", "請求狀態", "執行時長" 
}

{
    if (NR < 5) {
        len = split($9, strs, "?")
        printf "%-5s %20-s %18-s %3-s %30-s %30-s \n", NR, $1, $3, $8, strs[1], $11 
    } else {
        exit
    }
}

END {

}
行號  服務器域名                服務器 IP       請求接口 請求狀態                   執行時長                   
1     hmsspa.huimin100.cn  118.190.112.72     "GET /                              "51"
2     hmsspa.huimin100.cn  118.190.140.208    "GET /cart/set                      "148"
3     hmsspa.huimin100.cn  118.190.140.208    "GET /shopcar/cates                 "49"
4     hmsspa.huimin100.cn  118.190.118.56     "GET /shopcar/list                  "1766"

去重shell

BEGIN{
}
{
    ++ids[$1];
}
END{
    for ( key in ids ) {
            print(key) > "/tmp/test/uniq.txt"
    }
}

更多學習 awk 的連接:
https://www.twle.cn/c/yufei/a...
https://book.saubcy.com/AwkIn...
https://www.junmajinlong.com/...服務器

相關文章
相關標籤/搜索