擅长:python、mysql、java
<p>它这样工作的原因是,在Python启动之前,Bash会解释重定向操作符并打开一个输出流,将stdout写入文件。该操作将文件截断为0大小-换句话说,它清除文件的内容。因此,当Python脚本启动时,它会看到一个空的输入文件。在</p>
<p>最简单的解决方案是将stdout重定向到另一个文件,然后将其重命名为原始文件名。在</p>
<pre><code>python myScript.py test.txt > test.out && mv test.out test.txt
</code></pre>
<p>或者,可以修改Python脚本,将修改后的数据写回文件本身,这样就根本不必重定向标准输出。在</p>