ファイル内の1行を見つけて文字列を置き換えたいです。

ファイル内の1行を見つけて文字列を置き換えたいです。

「AUTOINSTALL_VTK」文字列を含むファイル内の特定の行を見つけ、bashスクリプトを使用してその行の「OFF」文字列を「ON」に置き換えたいと思います。

sedと交換することが可能でなければなりません。しかし、この行で「OFF」を「ON」に置き換えるようにsedにどのように指示しますか?

ベストアンサー1

この試み:

sed -i '/AUTOINSTALL_VTK/ s/\<OFF\>/ON/' file

単語の境界を追加し\<、他の単語内で置換を\>防止しました(例:)。OFFOFFICIAL


{ ... }一致する行から複数​​のコマンドを実行するには、.switchと例を
使用できます。ONOFF

sed -i '/AUTOINSTALL_VTK/{s/\<OFF\>/ON/n;t;s/\<ON\>/OFF/;}' file

おすすめ記事