sed、特定の行にテキストを挿入するための命令で別の変数(数値提供)

sed、特定の行にテキストを挿入するための命令で別の変数(数値提供)

sedの使用にはいくつかの問題があり、特定の行にテキストを挿入するための数値指示を提供する変数を見ました。

変数のない作業コードは次のとおりです。

sed -i '1i\NewLineHere\' ~/file/location/here.txt

数字1を$ varに変更する必要がありますが、変数の一部と見なされない限り、文字「i」を横にスペースなしで保持する必要があります。私はsedが変数を正しく見ることができるように ""の代わりに ""を使用しており、他の多くの試みを試しましたが、成功しませんでした。変数の横に「i」を保持しながら、変数から「i」を切断しなかった問題の例:

 sed -i "$vari\NewLineHere\" ~/file/location/here.txt

提案や回答によろしくお願いします。

答え1

{}変数名を引用するのが便利な場合です。あなたに関する限り、${var}

たとえば、

$ var=100
$ echo $vari

$ echo ${var}i
100i

{...}変数名の「範囲」として機能します。

(注:\および間を切り替えるときは文字に注意してください。)'"

関連情報