【问题标题】:SED - Replace every comma outside double quotes for a newline (Bash)SED - 将双引号外的每个逗号替换为换行符 (Bash)
【发布时间】:2022-12-22 23:03:48
【问题描述】:

我正在尝试用新行替换双引号外的所有逗号。

echo "ok,hi","hello","how" | sed "s/,/\n/g"

上面的命令导致所有值都在一个新行中。但是,我希望我的 sed 命令给出类似的结果

ok,hi
hello
how

好吧,嗨用双引号引起来,我希望它们在一行中出现。

【问题讨论】:

    标签: bash shell unix sed


    【解决方案1】:

    使用sed

    $ echo '"ok,hi","hello","how"' | sed 's/",/"
    /g'
    "ok,hi"
    "hello"
    "how"
    

    【讨论】:

      【解决方案2】:

      像这样:

      echo '"ok,hi","hello","how"' | sed -E 's/"([^"]+)",?/
      /g'
      ok,hi
      hello
      how
      

      【讨论】:

        猜你喜欢
        • 2022-12-22
        • 1970-01-01
        • 2018-11-18
        • 1970-01-01
        • 1970-01-01
        • 2020-05-29
        • 1970-01-01
        • 2020-12-28
        • 2017-06-19
        相关资源
        最近更新 更多