美文网首页大前端开发
mac os上使用sed的一个坑

mac os上使用sed的一个坑

作者: link_hui | 来源:发表于2018-02-22 17:51 被阅读76次

    问题

    sed可以替换文件中的某个部分。
    通常查到的命令如下:

    sed -i 's/main/fun/g' 'Test.txt'
    

    但是在mac os上执行却遇到下面的错误。

    sed: 1: "Test.txt": invalid command code T
    

    原因

    执行man sed查看帮助,发现 -i 操作后面要跟一个extension参数,明确备份的文件

         -i extension
                 Edit files in-place, saving backups with the specified extension.  If a zero-length
                 extension is given, no backup will be saved.  It is not recommended to give a zero-length
                 extension when in-place editing files, as you risk corruption or partial content in situa-
                 tions where disk space is exhausted, etc.
    

    如果不需要备份文件,则设置一个长度为0的参数

    解决

    sed -i '' 's/main/fun/g' 'Test.txt'
    

    相关文章

      网友评论

        本文标题:mac os上使用sed的一个坑

        本文链接:https://www.haomeiwen.com/subject/kgyztftx.html