请大哥门帮忙!!!

owenszp 2002-07-22 06:19:29
#!/usr/bin/perl -w
use strict ;
use File::Find;
sub wanted {
if (-f $File::Find::name) {
if( $File::Find::name=~/\?.tmp$/)
{print "Removing $File::Find::name";
unlink $File::Find::name;}
}}
find (\&wanded,'d:/');
#这个程序老是出错,提示说是usdefined subroutine &mai::wanded called at d:/perl/lib/File/Find.pm line 450
#但我不明白,可不可以说具体怎么改啊!
...全文
38 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
D_Q 2002-09-26
  • 打赏
  • 举报
回复
#你上面的程序错误是有点多,呵呵~
#本段代码在Win2k+ActivePerl下运行测试成功
use File::Find;
my $i=0;

find(\&wanted, 'E:/YYBBBB/');
($i==0)?print "没找到.tmp文件":print "共删除了$i个文件";

sub wanted
{#文件处理调用过程
if(-f)#是否是文件?
{
if($File::Find::name=~/.txt/ii)#寻找匹配扩展名.tmp
{
print "ReMoving File: $File::Find::name\n";#打印删除文件名
unlink $File::Find::name;#删除符合规则的文件
$i++;
}#-end if
}#-end if
}#-end sub
owenszp 2002-07-23
  • 打赏
  • 举报
回复
那要怎么改呢
JAPL 2002-07-22
  • 打赏
  • 举报
回复
sigh...

{} 对称么?

还有 /\?.tmp$/ 里得 /? 何用呢?
owenszp 2002-07-22
  • 打赏
  • 举报
回复
改了还是不行啊`
JAPL 2002-07-22
  • 打赏
  • 举报
回复
kao, i 服了 you.

find (\&wanded,'d:/');
^^^^^^

2,203

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 CGI
社区管理员
  • CGI社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧