データ文字列の末尾にあるセクション内にテキストを挿入します。

データ文字列の末尾にあるセクション内にテキストを挿入します。

ファイルが存在し、コマンドラインでファイルの末尾にテキストを表示する必要があります。問題は、データがすべて中括弧内のセクションにあることです。

ファイルの終わりは次のとおりです。

text-string1,text-string2,text-string3;
}

text-string3の後にテキストを挿入できるはずですが、それでもセミコロンと中括弧の中に残す必要があります。このように:

text-string1,text-string2,text-string3,new-text-string;
}

コマンドラインでこれを行う最善の方法は何ですか?

答え1

Singleを使用して実行できますが、sed単純化のために次のようにしますtac

tac file | sed '2s/;$/new-text-string;/' | tac 

答え2

sed -i 's/;$/,new-text-string;/' filename 

";"の最後のエントリを見つけて、その前に新しいデータを追加します。 -iコマンドラインでファイルを内部的に変更します。

関連情報