У меня есть следующие строки в файле
$ENVVAR
someText ($ENVVAR)
Я хочу использовать sed
так, чтобы только второе происшествие переменной было заменено значением переменной среды
так
$ENVVAR
someText (value of env variable)
Это - случай для немного <забастовка>, ужасная , забастовка> представляют себе заключать в кавычки. Одинарные кавычки останавливают расширения параметра оболочки и двойные кавычки, чтобы позволить им.
можно думать о кавычках как о двухпозиционных переключателях в sed
выражение, закрывая один тип заключения в кавычки и открытия другого как это: 'strong'"weak"'strong'
Используя $USER
как пример:
$ cat file
$USER
some text ($USER)
$ sed 's/($USER)/('"$USER"')/' file
$USER
some text (zanna)