3

我看到有人使用这样的表达方式:sed -e 's, *$,,' 有人知道我们为什么可以这样使用它,它有什么作用?

我认为 s 命令应该是sed -e 'addr,addrs/reg/sub/'

4

1 回答 1

8

在 sed 中使用不同的分隔符

sed 将“s”后面的任何内容作为分隔符

这是避免过度逃避的好方法。如果您使用要处理的字符串中不存在的分隔符,则代码更具可读性。

例如,假设我们lo/bye要从字符串中替换。使用/分隔符会有点混乱:

$ echo "hello/bye" | sed 's/lo\/bye/aa/g'
helaa

因此,如果我们定义另一个分隔符,那就更清楚了:

$ echo "hello/bye" | sed 's|lo/bye|aa|g'
helaa
$ echo "hello/bye" | sed 's,lo/bye,aa,g'
helaa
于 2013-07-26T08:59:49.857 回答