请教一个用perl删除文件的问题
时间:2010-10-26
来源:互联网
我要删除一个目录下的,30天之前,且文件大小大于10M的所有文件,这个目录下有很多层子目录,代码如下:
复制代码
print能正常打印出那些需要被删除的文件,但这些文件就是没被删掉。。。
我把
复制代码
还是不行,请问问题出在哪儿了,非常感谢各位回复
- #! perl -w
-
- use strict;
- use File::Path;
- use File::Find;
-
- #删除log
-
- my $logpath = 'E:\log';
-
- find(\&wanted,$logpath);
-
- sub wanted
- {
- /.*\.log/i && -s $_ > 10240000 && -M $_ > 30 && unlink $_ && print "$File::Find::name has been deleted\n";
- }
我把
- unlink $_ 换成 unlink $File::Find::name
作者: iuytr123 发布时间: 2010-10-26
我把wanted函数改成下面的,问题就解决了。但是不明白原因,请高手解答下,谢谢
复制代码
- sub wanted
- {
- if(/.*\.log/i and -s $_ > 10240000 and -M $_ > 30)
- {
- unlink $_ or die "cann't delete file:$_, $!\n";
- }
- }
作者: iuytr123 发布时间: 2010-10-26
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28