使用带方括号和引号的sed删除模式

时间:2018-03-08 07:11:25

标签: regex shell sed

如何使用sed删除具有此模式的行

<script type="text/javascript">
  function changeinother(radioid)
  {
  var curr=$('#'+radioid).attr('data-for');
  if(curr=='no'){
     $('input[type=radio]:checked').css('background-color','red');
  }
  }
</script>

我试过

resourceNames: [""]

文件的一部分看起来像这样

sed -i '/resourceNames: [""]/d' ./sa.yaml

2 个答案:

答案 0 :(得分:2)

好吧。我在我的代码中发现了这个问题。这工作

 sed -i '/  resourceNames: [[]""[]]/d' ./sa.yaml

答案 1 :(得分:1)

sed命令的更好,更强大的正则表达式:

sed -i '/\s*resourceNames:\s*\[""\]/d' ./sa.yaml

你只是逃避[],以避免将它们解释为字符范围,字符列表,而不是空格,最好使用\s*