如何使用 awk 并打印包含“db2”和“SAP”字符串的第三列?

如何使用 awk 并打印包含“db2”和“SAP”字符串的第三列?
cat ost_lvdd01_inbound_DD990_East.csv | awk -F',' ~ /db2/&/sap/ ; print $3

输入

/ost_lvdd01_inbound/1472930000/WPW-DBS003795.amer.warnerbros.com_1472938570_C1_IM:1472938570:/PROD_SQL_TXN_LOG:4:1:
/ost_lvdd01_inbound/1474990000/wbaubp10.warnerbros.com_1474999154_C1_TIR:1474999154:/W_PR_DB2_1M_SAP_User:4:1:
/ost_lvdd01_inbound/1475200000/EPWDB00004.tw.tweis.net_1475204316_C1_TIR:1475204316:/W_PR_SQL_TX_1M_1800_1h:4:1:

我只需要包含字符串 DB2 和 SAP 的列,在本例中它是 2 行。

答案1

“易于理解”的答案(尽管如果你还有其他事情要做,Awk 会更好):

cut -d, -f3 file.csv | grep DB2 | grep SAP

答案2

awk -F: '$3~/DB2/ && $3~/SAP/{print $3}' ost_lvdd01_inbound_DD990_East.csv

相关内容