我有一个配置文件,其中包含一些ENV_VARIABLE样式的变量.
This is my file.
It might contain $EXAMPLES of text.
Run Code Online (Sandbox Code Playgroud)
现在我希望将该变量替换为保存在我的实际环境变量中的值.所以我正在尝试这个:
export EXAMPLES=lots
envsubst < file.txt > file.txt
Run Code Online (Sandbox Code Playgroud)
但是当输入文件和输出文件相同时它不起作用.结果是一个大小为0的空文件.
必须有一个很好的理由,一些我不知道的bash基础知识?如何在不首先输出到其他文件然后用它替换原始文件的情况下实现我想要做的事情?
我知道我可以轻松地完成它sed
,但当我发现envsubst
命令时,我认为它应该是我的用例的完美,所以我想使用它.