スラッシュを含む sed を使用してファイルにテキスト行を追加する

スラッシュを含む sed を使用してファイルにテキスト行を追加する

設定ファイルに1行のテキストを追加しようとしていますが、エラーが発生し続けます。sed: -e expression #1, char 2: extra characters after command

私がやっていることは次のとおりです。

sed -i 'HAVE_OPENBLAS = \usr' ./settings.mk

助けてくれてありがとう!

答え1

単純なエコーではないのはなぜですか?

$ echo 'HAVE_OPENBLAS = \usr' >> ./settings.mk

答え2

必ずこれを行う必要がある場合sed

  • ファイルの先頭に次の行を追加します。

    sed -i -e '1i\' -e 'HAVE_OPENBLAS = \\usr' ./settings.mk
    
  • ファイルの末尾に次の行を追加します。

    sed -i -e '$a\' -e 'HAVE_OPENBLAS = \\usr' ./settings.mk
    
  • この行を5行目に追加し、次の行を下に移動します。

    sed -i -e '5i\' -e 'HAVE_OPENBLAS = \\usr' ./settings.mk
    
  • ファイルの5行目を新しい行に置き換えます。

    sed -i -e '5c\' -e 'HAVE_OPENBLAS = \\usr' ./settings.mk
    

関連情報