ファイルに次のようなコードブロックがあります。
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2
tc_
キーワードが含まれるすべての行を検索し、それらの行の末尾にstatus=D
を追加します。したがって、上記のエントリは次のようになります
BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode1 status=D
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1 timeout=30 keepalive=on route=tc_snode2 status=D
これを達成するために次のコマンドを使用しています。
sed -i '/tc_/a status=D' app.conf
しかし、status=D
が改行の後であることがわかります。これには改行は必要ありません。 ''(スペース)を追加する必要があります。
試す
sed -e '/tc_/s/$/ status=D/'
どこ
/tc_/
tc_が見つかった行、s
代替、/$
行末、/ status=D/
この文字列問題がなければ、-i
を追加して編集します。