我正在尝试使用sed进行以下操作
cp src/config/template.js src/config/index.js
export API_GATEWAY_ENDPOINT="http://localhost:9000/"
sed -i "" "s|{{API_GATEWAY_ENDPOINT}}|$API_GATEWAY_ENDPOINT|g" src/config/index.js
但是当我运行此脚本时,我得到了这个错误,
sed: can't read s|{{API_GATEWAY_ENDPOINT}}|http://localhost:9000/|g: No such file or directory
我正在使用Linux计算机。
能告诉我为什么会这样吗?
答案 0 :(得分:0)
sed的第一个参数应该是脚本。因此,当您有多余的""
时,第二个参数将被解释为文件名。
您无需复制文件,然后进行就地替换。而是使用>
运算符将输出从sed重定向到正确的文件。
>src/config/index.js <src/config/template.js sed "s|{{API_GATEWAY_ENDPOINT}}|$API_GATEWAY_ENDPOINT|g"