我想在包含字符串“AUTOINSTALL_VTK”的文件中找到某一行,并使用 bash 脚本在该行中将字符串“OFF”替换为“ON”。
应该可以用 sed 进行替换,但是我如何告诉 sed 仅将这一行中的“OFF”替换为“ON”?
答案1
尝试这个:
sed -i '/AUTOINSTALL_VTK/ s/\<OFF\>/ON/' file
我添加了单词边界\<
并\>
防止OFF
在其他单词内替换,例如OFFICIAL
。
要对匹配行运行多个命令,您可以使用{ ... }
.
切换ON
and 的示例OFF
:
sed -i '/AUTOINSTALL_VTK/{s/\<OFF\>/ON/n;t;s/\<ON\>/OFF/;}' file