0

在 MKS SED for Windows 上,这

TYPE Q:\temp\curtainssetspread.M3U | SED -E "/z/{s_a_b_}"

失败了

sed: garbage after command

为什么?

这种用法与文档正确一致:

a,b{    groups all commands until the next matching }, so that sed executes the entire group only if the { command is selected by its address(es).
4

1 回答 1

1

根据POSIX}必须以换行符开头。我不确定 MKS 做了什么,但拥有标准的好处在于以下内容应该适用于所有系统(使用多个-es 将每个字符串连接在一起,中间有换行符):

sed -e "/z/{s_a_b_" -e "}"

如果它不起作用,这是 MKS 中的一个错误,应该报告,因为他们说它们sed是 POSIX 兼容的。

我确实建议听从本杰明的建议,然后做

sed -e '/z/s_a_b_'

不过,如果可能的话。

于 2017-08-21T02:16:58.603 回答