sed: Zastąp część linii
Jak można zastąpić część linii sedem?
Linia
DBSERVERNAME xxx
należy zastąpić:
DBSERVERNAME yyy
Wartość xxx może się różnić i istnieją dwie karty między nazwą_serwera_db i wartością. Ta para nazwa-wartość jest jedną z wielu z pliku konfiguracyjnego.
Próbowałem z następującą referencją wsteczną:
echo "DBSERVERNAME xxx" | sed -rne 's/\(dbservername\)[[:blank:]]+\([[:alpha:]]+\)/\1 yyy/gip'
i to spowodowało błąd: nieprawidłowe odwołanie 1 do RHS polecenia `s '.
Co jest nie tak z tym wyrażeniem? Używanie GNU sed.