简体   繁体   中英

How to use sed or awk to extract substring

I have a file that contains the following:

[class:ABC_DEF_GHI]
[class:ABC_DEF_GHI:app:ABC_DEF_GHI]

My goal is to extract ABC_DEF_GHI

Here is the script I'm trying to write so far.

eval sed -n 's/.*app://p' file.txt >> $file

您可以通过在awk使用多个定界符来获得此值:

awk  -F':|]' '{print $2}' $file

with sed

$ sed -E 's/.*:(.+)]/\1/' file
ABC_DEF_GHI
ABC_DEF_GHI

extract content between a colon and right square bracket, due to greedy match it will be the last colon.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM