Вставьте файл в начале файла, возможно, используя sed - PullRequest
0 голосов
/ 25 января 2012

Я думаю, что у нас уже есть похожий пост, использующий sed для добавления "текста" в начале файла Скажи: sed -i '1i text' inputfile

Но вот мой вопрос: в моем тексте много строк, поэтому я поместил их в файл (file1). И я надеюсь вставить содержимое в file1 в начале file2.

Как я могу сделать это, используя sed или другие подходы? ТНХ

редактирование:

Извините, я сам усложняю этот вопрос! Это идиотский вопрос, потому что мы можем просто сделать «кошкой»! :) Я идиот

Ответы [ 3 ]

2 голосов
/ 25 января 2012

Как насчет

cat file1 file2

(Ну, это не редактирование на месте, хотя, вероятно, вам нужно использовать временный файл или буфер.)

Обратите внимание, что в некоторых оболочках вы также сможете делать

command < file1 < file2
0 голосов
/ 25 января 2012

Это может сработать для вас (как упражнение, так как cat является очевидным выбором):

sed '1{h;r file1'$'\n'';d};2{H;g}' file2
0 голосов
/ 25 января 2012

Использование awk:

awk 'BEGIN { while ((getline tmp < "TEMPLATE" ) > 0) { print tmp } 
             close("TEMPLATE")}
     { print }' ORIGFILE > NEWFILE && mv NEWFILE ORIGFILE

Использование vim:

vim -c "read TEMPLATE" -c "read FILE" -c "wq"
...