繁体   English   中英

Sed:如何将匹配的行括起来?

[英]Sed: How to enclose matching lines?

我对sed有这个问题。

这就是我正在使用的:

sed -e "s/^00.*$/[&]\n/" file.txt

尝试匹配文件中此模式的出现:

00:04:33.00,00:04:37.47

并在开头和结尾处用括号替换,并换行。

我想得到这个:

[00:04:33.00,00:04:37.47]
<<need a new line here>>>

但是,我得到这个:

]00:04:37.47,00:04:40.25
<<with a new line here>>>

由于输入文件的格式为DOS样式\\r\\n因此您可以在行的开头加上右括号。 尝试先在行尾卸下回车架。

sed 's/\r$//; s/^00\..*/[&]\n/' file

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM