bash - 防止 sed 创建临时文件

我正在将一个代理变量注入(inject)到 shell 脚本中。我必须对字符串进行转义,因为中间有一个空格。

sed -i -e 's#UseConcMarkSweepGC#UseConcMarkSweepGC $PROXY_ARGS#g' ${TEST_HOME}/bin/test.sh

现在这总是在末尾生成另一个带有 -e 的文件,所以我最终得到了 test.shtest.sh-e。两者是一样的。目前我在做

rm test.sh-e

就在 sed 之后,它工作正常。我想知道是否有办法完全不生成临时文件?我无法删除 -e,因为出现错误 sed: -i may not be used with stdin

相关文章:

macos - 通过 PIP 安装 NPM,但得到 "npm: command not found"

windows - 如何在命令提示符下查看我的 SYSTEM 环境变量?

git - 从 merge 请求创建补丁

php - Eloquent 模型添加没有 "created_at"和 "updated_at"字段

haskell - 如何修改或读取作为函数参数传递的可变向量?

php - 如何在 php 中使用 in_array 并将数组作为针,但在至少有一个值匹配时返回 t

assembly - GDB - 它如何知道函数调用堆栈?

javascript - 在 React 中停止路由更改的音频?

python - Sqlalchemy,递归获取具有关系的子项和祖先

oracle - 为什么我不能使用 SQLcl 通过 jdbc 连接