Skynet

          ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks


          工具小腳本
          #!/bin/perl
          use File::Find;
          use Log::FileSimple;

          #use strict;
          #use warnings;

          # 說明: 
          #     遍歷出 "/cygdrive/c/Documents and Settings/Administrator/"  
          #       滿足 "^.*\.txt$" 添加文件
          #         并運行 "ls -l $fileAllName " 
          #    運行日志 ./log
          #
          # perl this.pl  
          #     "ls -l $fileAllName " 
          #     "/cygdrive/c/Documents and Settings/Administrator/"  
          #     "^.*\.txt$"
          #     ./log
          #
          # run_comm 參數1 替換說明:
          #     $filePath  為輸入參數2,遍歷根目錄 "/cygdrive/c/Documents and Settings/Administrator/"  
          #    $fileAllName 為當前遍歷,滿足正則條件的 全路徑+文件名
          #    $logicFileAllName  為當前遍歷,滿足正則條件的 邏輯路徑+文件名
          #    $logicFilePath 為當前遍歷,邏輯路徑
          #    $logicFileName 文件名稱
          #    $logicFileExp  文件后綴  
          #        (test.txt 文件  
          #            $logicFileName 為 test 
          #            $logicFileExp 為 txt
          #            )


          my $run_comm=$ARGV[0];
          my $file_path=$ARGV[1];
          my $file_find_rex=$ARGV[2];
          my $logfile=$ARGV[3];


          my $log = new Log::FileSimple(name=> 'Log::FileSimple logs',
                                        file      
          => "$logfile",
                                        mask      
          => -1,
                                        autoflush 
          => 0,
                                        );

          sub fileThumb{
           
          eval{
            
          $_tmp_run_comm=$run_comm ;
            
          if/$file_find_rex/ ){
              
          $fileNum++;
              
          $_tmp_run_comm=~s/\$filePath/$file_path/g;
              
              
          my $_file_all_name=$File::Find::name;
              
          $_tmp_run_comm=~s/\$fileAllName/$_file_all_name/g;
              
          my $_logic_file_all_name=$_file_all_name;
                    
          $_logic_file_all_name=~s/$file_path//g;
                  
          $_logic_file_all_name=~s/^\s*\.//g;
              
          $_tmp_run_comm=~s/\$logicFileAllName/\.\/$_logic_file_all_name/g;
              
          if($_logic_file_all_name=~/^(.*)\/([^\/]*)\.([^\.]*)$/){
                
          my $_logic_file_path=$1;
                
          my $_logic_file_name=$2;
                
          my $_logic_file_exp=$3;
                
          $_tmp_run_comm=~s/\$logicFilePath/\.\/$_logic_file_path/g;
                
          $_tmp_run_comm=~s/\$logicFileName/$_logic_file_name/g;
                
          $_tmp_run_comm=~s/\$logicFileExp/$_logic_file_exp/g;
                }
              
          #print $_tmp_run_comm,"\n";
              my @return=eval{system("$_tmp_run_comm 2>&1 \|echo \$\? ")};
              
          if ( $return[(@return-1)] != 0 ) { 
                
          $log->log(message=>"success($fileNum):$_file_all_name");
                 }
          else{
                
          $log->log(message=>"error($fileNum):$_file_all_name");
                  }
            }
           }
          }


          find(
          \&fileThumb,$file_path);



          整理 www.aygfsteel.com/Good-Game
          posted on 2009-03-02 17:51 劉凱毅 閱讀(1245) 評論(0)  編輯  收藏 所屬分類: perl
          主站蜘蛛池模板: 吴堡县| 韩城市| 阜南县| 呈贡县| 澄城县| 临沭县| 高陵县| 乌拉特中旗| 和平区| 湖州市| 南木林县| 静安区| 资兴市| 浠水县| 深圳市| 益阳市| 正阳县| 淮南市| 玉环县| 凤城市| 鹤岗市| 临漳县| 介休市| 中宁县| 宜城市| 讷河市| 德江县| 溧水县| 广州市| 怀仁县| 大冶市| 平利县| 云霄县| 宁南县| 清徐县| 五莲县| 永登县| 同德县| 昌江| 大安市| 启东市|