V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
aREMbosAl
V2EX  ›  问与答

bsd-sed 竟然不能处理‘\n’,真的坑

  •  
  •   aREMbosAl · 2019-02-15 11:55:52 +08:00 · 1929 次点击
    这是一个创建于 1869 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这两天再写一个处理文本的脚本,linux 上面运行通过了,mac 上面就是不行。查了半天原来 bsd-sed 里面正则表达式不能处理换行符‘\n ’。。这是什么鬼设计?

    6 条回复    2019-02-15 14:57:35 +08:00
    msg7086
        1
    msg7086  
       2019-02-15 12:33:27 +08:00
    拿 linux-sed 上跑得通的代码去 bsd-sed 里,是有可能跑不通的呀。
    lizheming
        2
    lizheming  
       2019-02-15 12:43:23 +08:00
    所以一般我都写 [\r\n]+ 一般情况下问题都不大…
    ps. 换行符格式不一样不应该是基础知识么...
    kfll
        3
    kfll  
       2019-02-15 12:46:26 +08:00 via iPhone
    ˊ_>ˋ撇开好不好用不谈的话,

    先有的 bsd sed 再有的 gnu sed ;可以用 homebrew 安装 gnu sed
    aREMbosAl
        4
    aREMbosAl  
    OP
       2019-02-15 14:55:36 +08:00
    @msg7086 只是没想到这个坑。。。主要是想让脚本不同平台都能运行
    aREMbosAl
        5
    aREMbosAl  
    OP
       2019-02-15 14:56:31 +08:00
    @lizheming 不是换行符的问题,是没法识别\n
    aREMbosAl
        6
    aREMbosAl  
    OP
       2019-02-15 14:57:35 +08:00
    @kfll 懂了。现在已经全改了 python。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3053 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:02 · PVG 19:02 · LAX 04:02 · JFK 07:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.