![为什么我可以追加到文件但不能覆盖它?](https://linux22.com/image/17498/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E5%8F%AF%E4%BB%A5%E8%BF%BD%E5%8A%A0%E5%88%B0%E6%96%87%E4%BB%B6%E4%BD%86%E4%B8%8D%E8%83%BD%E8%A6%86%E7%9B%96%E5%AE%83%EF%BC%9F.png)
如果我这样做:
iptables -nvL > output.txt
output.txt
最终变成空的。如果我做:
iptables -nvL >> output.txt
效果很好。追加有效,但覆盖无效。为什么?
答案1
您可能noclobber
在 shell 中启用了该选项。这可以防止现有文件被输出重定向覆盖。要禁用它,请运行set +o noclobber
.可能是在您的或其他等效文件noclobber
中的某个位置设置的。.bashrc
/etc/profile
另请参阅man set
或man bash
了解详细信息。