免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1399 | 回复: 7
打印 上一主题 下一主题

[新手入门] 如何改变某个文件的长度 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-07 11:41 |只看该作者 |倒序浏览
应用系统有一日志文件,随着应用不停地增长。是否有某种方法可以直接改变日志文件的大小,而不影响应用?
请高手指点一二,谢谢!

论坛徽章:
0
2 [报告]
发表于 2004-11-08 09:51 |只看该作者

如何改变某个文件的长度

可以用vi打开
切换到命令模式下: d 1000   //这样就删除了从光标开始向下的1000行,自己可以随意删多少行,注意不要超出写这个log文件的文件指针就可以了

我估计你的log文件是不可以删除的对吗?而且log文件的末尾是不断添加新log的,但是开始的那部分就没有必要保存了?

论坛徽章:
0
3 [报告]
发表于 2004-11-08 11:24 |只看该作者

如何改变某个文件的长度

如果你的日志名为/var/log
那么用tail -n  /var/log  >; /tmp/log 其中n是需要保留从最后一行算起的n行日志。
mv /tmp/log /var/log

做计划任务,在每天空闲时候执行。

论坛徽章:
0
4 [报告]
发表于 2004-11-08 12:22 |只看该作者

如何改变某个文件的长度

日志非常大,至少超过1G,所以不能用VI打开。
而且应用程序打开了文件句柄,所以不能用MV将文件移开而生成新日志文件。
再请问大侠,这种情况下,有办法去掉文件头部的数据吗?(即改变文件的长度)
谢谢!

论坛徽章:
0
5 [报告]
发表于 2004-11-08 12:33 |只看该作者

如何改变某个文件的长度

如果内容不要,不能删除,只要缩小,
>;xxx.log就行了。

论坛徽章:
0
6 [报告]
发表于 2004-11-08 12:45 |只看该作者

如何改变某个文件的长度

如果应用用>;生成的log文件,>;能清除内容,不能缩小大小
如果应用用>;>;省城的log文件,>;可以缩小

论坛徽章:
1
水瓶座
日期:2014-03-20 18:21:14
7 [报告]
发表于 2004-11-08 12:55 |只看该作者

如何改变某个文件的长度

fuser释放对文件的占用

论坛徽章:
0
8 [报告]
发表于 2004-11-08 15:09 |只看该作者

如何改变某个文件的长度

原帖由 "szddong" 发表:
日志非常大,至少超过1G,所以不能用VI打开。
而且应用程序打开了文件句柄,所以不能用MV将文件移开而生成新日志文件。
再请问大侠,这种情况下,有办法去掉文件头部的数据吗?(即改变文件的长度)
谢谢!


在适合的时候,停掉应用,

删除log,以后就费点力气,每天都维护一下该log文件(方法参考我上面的)
这个方法很笨,但是有效

楼上的几位方法都是不可取的,文件指针都丢失!应用写不了log就报错
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP