私はすでに同様の質問を読みましたが、私の問題に対する解決策はありません。
スクリプトでsedを使用しているファイルの行を削除したいのですが、これがコードです。
line="this"
del='echo "'/"$line"/d'"' #it's a AltGr+7 on AZERTY keyboard but for readability of the code I use '
sed -i $del /home/example/fic.txt
私も試してみます:
line="this"
del='echo "/"$line"/d"'
sed $del /home/example/fic > /home/example/fic
しかし、私は同じエラーがあります:
sed: -e expression #1, char 1: unknown command: `''
これを試して、
_line="this"
del=`echo "/"$line"/d"`
sed $del /home/example/fic > /home/example/fic
_
コードでは、変数del
に値を割り当てている間は一重引用符です。これは、実行するのではなく、静的な文字列と見なされます。バックティックまたは$()
を使用して実行できます。
もっと良い方法、
_line="this"
sed -i "/$line/d" /home/example/fic
_
-i
_インラインで編集します。