sed 报错sed can't read 的解决方法:主要是mac和linux平台上sed使用方式的区别

方法/步骤

  1. 1

    mac上的sed命令:将文件中某行的指定字符替换

    sed -i '' "行数s#原来的字符#替换之后的字符#" 需要替换的文件路径

    例如:

    sed -i '' "12s#abc.*e#abcde#" a.txt

    将文件a.txt里的12行的前面为以abc开头,e结尾的字符串,替换为abcde

  2. 2

    mac上的sed命令:将文件中某行的指定字符替换,只需要把前面的两个单引号去掉就可以了(虽然差别很小,但是很容易就搞错了)

    sed -i "行数s#原来的字符#替换之后的字符#" 需要替换的文件路径

    例如:

    sed -i "12s#abc.*e#abcde#" a.txt

    将文件a.txt里的12行的前面为以abc开头,e结尾的字符串,替换为abcde

    END

注意事项

  • sed命令在mac和linux还是有区别的,不然会报错,替换不成功
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。