+ -
当前位置:首页 → 问答吧 → 求此问题的解决方法

求此问题的解决方法

时间:2010-10-15

来源:互联网

  1. #!/usr/bin/perl -w
  2. use IO::File;
  3. #/home/newdata 目录下有 3个目录 201010、201011、201012 ,所以用opendir 先遍历出目录,再用glob 取文件,
  4. my $path_dir = "/home/newdata/";
  5. my $idc_name = "ai";
  6. my $server_name = "www_flow";

  7. opendir(TEMP_DIR, $path_dir) or die $!;

  8. while(my $temp_dir = readdir(TEMP_DIR))
  9. {
  10. next if ($temp_dir=~/^\./);

  11. #glob 好像不支持 变量引用

  12. @file = glob '$path_dir$temp_dir/[0-9]*\_$idc_name\_$server_name';
  13. foreach $temp_file (@file)
  14. {
  15. print $temp_file;
  16. }
  17. }

  18. closedir(TEMP_DIR);
  19. exit 0;
复制代码
文件名格式例子为:
20101012_lala_www_flow      20101014_xixi_mag_flow       20101014_ai_www_flow
20101012_hehe_www_flow     20101014_gugu_mag_flow      20101015_ai_www_flow

如何匹配 _ai_www_flow 的文件 ,我用代码中的glob 试验了 但是不行,最终的目标是 遍历出/home/newdata/下 所有以结尾 _ai_www_flow 的文件

求教达人啊

作者: ztj2247   发布时间: 2010-10-15

本帖最后由 zhlong8 于 2010-10-15 12:03 编辑

不是 glob 不支持,是你用的单引号……

glob "/home/newdata/*/*_ai_www_flow"

作者: zhlong8   发布时间: 2010-10-15

热门下载

更多