Коли рядок заміни містить нові рядки та пробіли, ви можете використовувати щось інше. Ми спробуємо вставити результат ls -l
у середині деякого файлу шаблону.
awk 'NR==FNR {a[NR]=$0;next}
/Insert index here/ {for (i=1; i <= length(a); i++) { print a[i] }}
{print}'
<(ls -l) text.txt
Коли ви хочете, щоб щось було вставлено після рядка, ви можете перемістити команду {print}
або переключитися на:
sed '/Insert command output after this line/r'<(ls -l) text.txt
Ви також можете використовувати sed для вставки перед рядком з
sed 's/Insert command output after this line/ls -l; echo "&"/e' text.txt