首页 > 解决方案 > 在一个管道中覆盖 bash 中的文件

问题描述

结果cat file1 | cat > file1是空文件1。

的结果head file1 | cat > file1也是空文件1。

当然,一个真正的管道是为了有更多的步骤——里面有工具和操作。

有什么方法可以保存转换后的阅读内容吗?

真实案例是source .env && cat file1 | envsubst > file1

标签: bashpipecat

解决方案


谢谢,但正确答案是:

cat file1 | envsubst | sponge file1

这(来自吠陀)是海绵的错误用法

cat file1 | envsubst | sponge | cat > file1


推荐阅读