Это должно работать, так как мы не используем модификатор g
, он будет совпадать только один раз на строку
sed -e 's/^[^ ]*\>/&_NAME/'
Он соответствует непробельным символам до первой границы слова, заменяяэто с собой и добавляет _NAME
.Как уже упоминалось, без модификатора g
он будет совпадать только один раз на строку, а если на строке есть начальные пробелы, просто удалите первый ^
-корь.
Редактировать
вы хотели, чтобы он совпадал только в определенных строках, так что здесь:
sed -e '/network netmask broadcast$/s/^[^ ]*\>/&_NAME/'
Первая часть является селектором, который гарантирует, что подстановка выполняется только в строках, где заканчивается network netmask broadcast
линия.Чтобы он соответствовал любым строкам с этими словами, просто удалите $
-anchor и добавьте *
(пробел-звездочка) к пробелам, чтобы сделать их гибкими.Но вы, наверное, уже знали, что ..:)