文書の内容:
# cat file.txt
-----
MATCH
-----
MATCH
-----
MATCH
-----
# cat text.txt
add this text file
before first match
sed コマンド:
# sed '0,/MATCH/r text.txt' file.txt
-----
add this text file
before first match
MATCH
add this text file
before first match
-----
MATCH
-----
MATCH
-----
# sed '0,/MATCH/i prependme once' file.txt
prependme once
-----
prependme once
MATCH
-----
MATCH
-----
MATCH
-----
私は次のような出力を得るために何らかの方法でこれらのコマンドを組み合わせようとしています。
-----
add this text file
before first match
MATCH
-----
MATCH
-----
MATCH
-----
ベストアンサー1
...を使用してed
交換sed
ed -s << EOF file.txt
0,/MATCH/-1 r text.txt
,p
q
EOF
または一行で
printf '0,/MATCH/-1 r text.txt\n,p\nq' | ed -s file.txt
-----
add this text file
before first match
MATCH
-----
MATCH
-----
MATCH
-----
(内部編集,p
に置き換えられます)w