在执行我的应用程序(Flask)之前,我的Dockerfile的入口点CMD执行一个shell脚本,根据环境变量修改本地文件。
cat static/login.html | sed "s/some_match/some_substitute/g" > static/login.html但是,我发现结果文件是零字节。有什么好主意吗?
谢谢。
发布于 2017-04-10 22:10:13
我可以重现你的问题,但不能解释。也许还有其他的答案。
但是,有一个解决办法可以解决这个问题:
对输出使用与输入不同的文件名。
cat input.txt | sed "s/a/b/g" > input2.txt
或者,使用-i.bak选项。
sed -i.bak "s/b/a/g" input.txt
我只能猜测到底是怎么回事:
在读取输入之前,可能打开管道的输出以进行写入(不附加)。
https://stackoverflow.com/questions/43333531
复制相似问题