字符串替换为“-”

String replace with "-"

我想将字符串中的 -. 替换为 .,fishshell:

$ string replace '-.' '.' -- 'abc-.dd'
string replace: Unknown option '-.'

但它失败了,似乎它将 -. 中的 - 视为一个选项符号。

正确的做法是什么?

您对 -- 的想法是正确的,只是放错了地方。 -- 表示后面的所有内容都是参数,而不是选项。所以有人会写:

string replace -- -. . abc-.dd

请注意,此处不需要引用(但也无妨)。