bash команда для копирования содержимого файла из файла1 в файл2 после определенной строки / текста в файле2 - PullRequest
0 голосов
/ 20 апреля 2020

Предположим, что содержимое файла file2 указано ниже

aaa aaa aaa
bbb bbb bbb
ccc ccc ccc

Я хочу скопировать содержимое файла file1 в файл file2 после строки, содержащей строку «bbb bbb bbb».

По сути, я хотите найти шаблон в file2 и вставить содержимое в следующую строку после этого шаблона.

Примечание: этот "bbb bbb bbb" может быть в любой строке no в file2.

Ответы [ 3 ]

3 голосов
/ 20 апреля 2020

Это очень просто: try:

sed -i '/bbb bbb bbb/r file1' file2
1 голос
/ 20 апреля 2020

Если вы хотите сохранить обновленный файл2, ed на помощь:

ed -s file2 <<EOF
/^bbb bbb bbb$/r file1
w
EOF
0 голосов
/ 20 апреля 2020

Если доступно ed.

printf '%s\n' '/^bbb bbb bbb$/r file1.txt' w | ed -s file2.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...