Сед - как мне сделать это "один лайнер"?
Я хотел бы для этого сценария:
#!/bin/sh
cat source.txt | sed "/replace_text_holder/ {
r file.txt
d
}" | cat
пишите так:
cat source.txt | sed "/replace_text_holder/ { r file.txt d }" | cat
но это не работает Кто-нибудь знает почему и / или как это исправить?
В настоящее время меня преследует эта ошибка:
unbalanced "{"
Я попытался вставить "\n", чтобы убедиться, что есть новая строка, но это не работает.
Очевидно, я понятия не имею, что я делаю...
1 ответ
Решение
Попробуй это:
sed -e '/replace_text_holder/{r file.txt' -e 'd}'