У меня есть следующая строка в качестве вывода
Config(1) = ( value1:4000 value2:2000 value3:500 value4:1000)
Я хочу собрать все 4 значения в 4 различных переменных в bash, и я думаю, что самый чистый способ сделать это с помощью регулярных выражений. И я думаю, что лучший способ использовать регулярные выражения для этого с помощью sed. Я протестировал регулярное выражение и могу захватить значение1 с помощью
value1:(\d+)
С помощью sed Я пытаюсь сделать это на основе других ответов:
echo "Config(1) = ( value1:4000 value2:2000 value3:500 value4:1000)" | sed -n 's/^\s*value1\:\(\d\+\)\s\?.*/\1/p'
Это ничего не возвращает