我想選擇以“批準者”開頭并以“=”符號之前結束的詞。這是日志檔案。
Test worker] INFO cyyom.bghhht.gsghhj.dijjkkgital.dggcf.applicationservice.service.RequestServiceImpl - Approved List :
[AssignAccountApplicationRequestDto [status=true, requestId=1, backendData=BackendPopupDto [userID=0, companyId=0, ApplicationId=0,
userType=Test, corpId=0, revenueOwner=notnull, requestedDate=null]]] , Rejected List : [AssignAccountApplicationRequestDto [status=false, requestId=11, backendData=null]]
Approved by ha:////4P4ei7QWIY1VDT3ygY1geg0Q82Jj2AqLzGAAAAmh LCAAAAAAAAP9b85aBtbiIQTGjNKU4P08vOT vOD8nVc83PyU1x6OyILUoJzMv2y /
JJUBAhiZGBgqihhk0NSjKDWzXb3RdlLBUSYGJk8GtpzUvPSSDB8G5tKinBIGIZ sxLJE/ZzEvHT94JKizLx0a6BxUmjGOUNodHsLgAyxEgY /
dLi1CL99OKCxJTczDwAUT2GdsMAAAA=PSPortal Administrator
我試過
awk '$1 == "Approved" { print $3, $4 }' log
然后結果是
ha:////4P4ei7QWIY1VDT3ygY1geg0Q82Jj2AqLzGAAAAmh LCAAAAAAAAP9b85aBtbiIQTGjNKU4P08vOT vOD8nVc83PyU1x6OyILUoJzMv2y /JJUBAhiZGBgqihhk0NSjKDWzXb3RdlLBUSYGJk8GtpzUvPSSDB8G5tKinBIGIZ sxLJE/ZzEvHT94JKizLx0a6BxUmjGOUNodHsLgAyxEgY /dLi1CL99OKCxJTczDwAUT2GdsMAAAA=PSPortal Administrator
預期產出
PSPortal Administrator
uj5u.com熱心網友回復:
使用您顯示的示例,請嘗試以下awk代碼。考慮到該行以同一行開頭Approved by并=進入同一行,然后執行以下操作。
awk -F'=' '/^Approved by / && NF>=2{print $NF}' Input_file
或者,如果您只有一個=排隊,請嘗試以下操作:
awk -F'=' '/^Approved by / && NF==2{print $NF}' Input_file
解釋:簡單的解釋是,=為 Input_file 的所有行設定欄位分隔符。在主程式檢查條件中,如果行從Approved by 并且NF等于 2,則列印該行的最后一個欄位。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/471516.html
標籤:贝壳
