У меня есть файл, который содержит следующее:
[class:ABC_DEF_GHI] [class:ABC_DEF_GHI:app:ABC_DEF_GHI]
Моя цель - извлечь ABC_DEF_GHI
Вот сценарий, который я пытаюсь написать до сих пор.
eval sed -n 's/.*app://p' file.txt >> $file
с sed
sed
$ sed -E 's/.*:(.+)]/\1/' file ABC_DEF_GHI ABC_DEF_GHI
извлекает содержимое между двоеточием и правой квадратной скобкой, так как из-за жадного совпадения это будет последнее двоеточие.
Вы можете получить это значение, используя несколько разделителей в awk:
awk
awk -F':|]' '{print $2}' $file