【问题标题】:Replace string with sed用 sed 替换字符串
【发布时间】:2020-07-28 15:25:49
【问题描述】:

文件内容:

world-123.hello-abcd
world-124.good
world-125.bye-abcd
world-126.bye

预期结果:

world-123.hello
world-124.good
world-125.bye
world-126.bye

我正在尝试修复的命令:

cat file | sed 's:\..*-.*::'

我得到的结果:

world-123
world-124.good
world-125
world-126.bye

如何修复缺失的内容?

【问题讨论】:

    标签: regex string sed replace


    【解决方案1】:

    你可以使用

    sed 's:-[^.-]*$::' file
    

    -[^.-]*$ 模式匹配-,然后匹配除.- 之外的任何0 个或多个字符,直到字符串的末尾。

    请参阅online sed demo

    【讨论】:

      猜你喜欢
      • 2020-03-13
      • 2012-12-21
      • 2021-03-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-17
      • 2017-02-08
      相关资源
      最近更新 更多