использование sed как я могу заменить два шаблона в более крупном шаблоне на одной строке?
учитывая одну строку текста, я хочу найти шаблон (назовем это внешним шаблоном), а затем в этом внешнем шаблоне заменить два внутренних шаблона.
вот пример ввода текста в одну строку:
Z:sourceprivatemaindeveloperfoosetenv.sh(25): export 'FONTCONFIG_PATH'="$WINE_SHARED_SUPPORT/X11/etc/fonts"
в примере выше внешний шаблон /^.*([[:digit:]]+):/
, который должен быть равен Z:sourceprivatemaindeveloperfoosetenv.sh(25):
два внутренних шаблона /^[A-Za-z]:/
и //
.
еще один способ сформулировать мой вопрос:
используя sed, я знаю, как выполнять замену шаблона, используя s
команда, но как я могу ограничить диапазон s
команда, так что он работает только на части входной строки до (25):
?
конечный результат, который я пытаюсь получить, - строка текста преобразуется в это:
/enlistments/source/private/main/developer/foo/setenv.sh(25): export 'FONTCONFIG_PATH'="$WINE_SHARED_SUPPORT/X11/etc/fonts"