tcl或sed或shell搜索替换多行

时间:2018-06-06 20:11:28

标签: bash perl sed tcl

我有一个文件,其中包含我要删除的部分:

 mu->doe = '( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>

  mu->Koe = '( tr<br>
     tekt  ( tr uapp "(Finction rood (\;)..<br>
     ord  ( a b c)<br>

  )<br>

  mu->Yoe = '( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>

我需要删除mu-> Koe部分文件中的结果文本应为:

  mu->doe = '( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>

   mu->Yoe = '( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>

我用了sed:

sed -e '/mica/,+5d'

但行数可能会有所不同,并不是很好的解决方案.. sed,tcl或任何脚本都会有所帮助..

1 个答案:

答案 0 :(得分:1)

也许:

Dates <- c('1/27/2016 5:22 PM', '1/28/2016 5:24 PM')

inp <- strptime(Dates, '%m/%d/%Y %I:%M %p'); inp;
#[1] "2016-01-27 17:22:00 AEDT" "2016-01-28 17:24:00 AEDT"

out <- format(inp, "%Y-%m-%d %H:%M:%S"); out;
#[1] "2016-01-27 17:22:00" "2016-01-28 17:24:00"

这将从Koe线删除到仅包含右括号的下一行。您可能需要调整第二个模式以考虑空格。