マルチライン交換

マルチライン交換

私はこれを理解しようと長い時間を費やしました。偶然にも、これを行う必要はなく、別の方法を見つけました。しかし、私の精神状態のためにまだ答えを知りたいです。

sedマークアップをいくつかのテキストに置き換えるのはとても簡単です。私が理解していないのは、sed複数行、タブなどの複雑な書式を使用して巨大なテキストブロックを挿入する方法です。どうやってやったの?sed最高ですか、それとも何ですか?

ベストアンサー1

ex実際にデータフローがない場合は、このような作業に使用します。exここに文書にコマンドを保存しました。

ex $FILENAME << END_EX_COMMANDS
" Find the mark, assuming it's an entire line
/^MARKER$/
" Delete the marker line
d
" Add the complex, multi-line text
a
Complex, vividly formatted text here.
Even more "specially" formatted text.
.
" The '.' terminates the a-command. Write out changed file.
w!
q
END_EX_COMMANDS

使用はexユーザーにとって利点です。ユーザーはすでにコマンドのキーストロークを知っていますが、盲目的に編集するように感じます。また、「:」モードで実行できるすべての操作だけでなく、複数の追加またはグローバル置換を実行することもできます。vivimvim

おすすめ記事