当前位置: 技术问答>linux和unix
[文件 重定向 清空] Linux 清空文件问题
来源: 互联网 发布时间:2015-12-09
本文导语: 有一个shell script 创建了out.log文件 "/apps/abc/run.sh > out.log &", 程序一直运行的, 不断写log到文件out.log, 假设文件大小到了10M, 然后用 "> out.log" or "cp /dev/null > out.log"进行清空, 显示文件大小为0, 表明清空了. ...
有一个shell script 创建了out.log文件 "/apps/abc/run.sh > out.log &", 程序一直运行的, 不断写log到文件out.log, 假设文件大小到了10M, 然后用 "> out.log" or "cp /dev/null > out.log"进行清空, 显示文件大小为0, 表明清空了. 但是当有log写入时, 文件大小恢复到10M大小. 在log之前的10M空间全部是NULL字符. 不论怎么清空(不要删除)文件, 当有log写入时就恢复文件大小.
不明是什么原因?
不明是什么原因?
|
这样,shell脚本程序的文件位置指针已经指在10M的地方,再写的时候就写到这个位置,前面的都用0填充。
|
应该不会的吧
正常写log的话应该是/apps/abc/run.sh >> out.log
当需要清理时用一下/apps/abc/run.sh > out.log
正常写log的话应该是/apps/abc/run.sh >> out.log
当需要清理时用一下/apps/abc/run.sh > out.log