man*_*ork 8

在基本的正则表达式中,您必须转义+量词:

sed 's/;\+$//' file
Run Code Online (Sandbox Code Playgroud)

或者使用扩展的正则表达式(如果你sed支持它们;GNU 支持sed):

sed -r 's/;+$//' file
Run Code Online (Sandbox Code Playgroud)

  • 标准 BRE 中没有“\+”,但 GNU BRE 和其他一些将它作为扩展。对于标准的 BRE,`+` 写成 `\{1,\}`。不过在这种情况下,`*` 也能正常工作。`sed 's/;*$//'`。一些 `sed` 实现支持带有 `-E` 选项的 ERE(IMO 比 `-r` 更有意义)。 (4认同)