Bash awk/sed extract multiple strings from a single large string using keywords
1
vote
3
answers
2252
views
Please help me figure out how to extract multiple substrings based on keywords.
I have been struggling with different methods using delimiters
My Input:
Inventory for 30844-ap01 NAME: AP1800 , DESCR: Cisco Aironet 1800 Series (IEEE 802.11ac) Access Point PID: AIR-AP1832I-E-K9, VID: V03, SN: KWC21420CKU
Inventory for ckh.hq-ap99 NAME: AP2700 , DESCR: Cisco Aironet 2700 Series (IEEE 802.11n) Access Point PID: AIR-CAP2702I-E-K9, VID: V03, SN: FCW2007N0ZQ
Inventory for AP0042.6843.ab78 NAME: , DESCR: PID: AIR-CAP1702I-E-K9, VID: V, SN: FCZ201622NY
Desired output:
30844-ap01 AIR-AP1832I-E-K9 KWC21420CKU
ckh.hq-ap99 AIR-CAP2702I-E-K9 FCW2007N0ZQ
AP0042.6843.ab78 AIR-CAP1702I-E-K9 FCZ201622NY
First string is anything between "Inventory for " and the next space
Second string is anything between "PID: " and the coma
Third string is an 11 char string after "SN: "
Asked by Gunsmoke
(11 rep)
May 28, 2021, 09:49 PM
Last activity: May 16, 2025, 09:08 PM
Last activity: May 16, 2025, 09:08 PM