Использование переменных из bash-скрипта в sed
Вроде невелика проблема, а вопросы вызывает. Понятно, что вот так работать не будет:
VAR1="Nado naiti"
VAR2="Nado zamenit'"
sed 's/$VAR1/$VAR2'т.к. одинарные кавычки в команде
sed все закэранируют, и sed будет искать черти что и с боку бантик.1. Поменять одинарные кавычки на двойные.
2. Поменять sed'овский разделитель слэш (
/) на что-нибудь другое, например на знак % (Уникальность программы sed в том, что она позволяет использовать любой разделитель, например знак подчеркивания)VAR1="Nado naiti"
VAR2="Nado zamenit'"
sed "s%$VAR1%$VAR2"Добавление строки в начало файла из предыдущей заметки. Строка содержится в переменной
$FIRSTSTRING:sed -i -e "1 s%^%$FIRSTSTRING\n%" file.txtЗамена строки, начинающейся с любого количества пробелов и/или со строки из переменной
$START на строку, содержащуюся в переменной $REPLACE:sed -i "s%^ *$START.*%$REPLACE%" file.txtЭто репост с сайта http://tolik-punkoff.com
Оригинал: http://tolik-punkoff.com/2019/08/15/ispo