发布时间

Shell-字符串替换生成模板文件

Authors
  • avatar
    Name
    Chad
    Twitter

缘起

在构建 Build 的时候需要根据平台和环境写入配置文件, 需要写一个脚本来提供不同的模板,记于此

  • 例如 👇🏻
...
{{ base }}
...

替换

<base href="test/xxx/xx">
or
<base href="prod/xxx/xx">

模板文件:

... 略

{{base}}

.... 略

代码

可以使用 shellsed 命令就行替换

sed "s/{{base}}/<base href=\"\/yhk\/\">/g" $filename > ./web/index.html

在当前文件替换修改加 -i 👉🏻 sed -i "s/{{base}}/<base href=\"\/yhk\/\">/g" $filename

但是在 MacOS中 不行 需使用 sed -i '' "s/{{base}}/<base href=\"\/yhk\/\">/g" $filename 原因 👇🏻

image-20230216172557340

  • 其他解决方法

调整mac下sed的用法,使其与linux一致 mac上安装gnu-sed

brew install gnu-sed

alias sed="gsed"

调整后两系统下sed的用法完全一致。

Support

赞赏

如果这些内容对你有所帮助,欢迎赞赏支持。

微信赞赏二维码
微信赞赏
支付宝赞赏二维码
支付宝赞赏