<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Skynet

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

      BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
      112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks


    對(duì)應(yīng)腳本運(yùn)用:
      1.  shell  統(tǒng)籌管理 腳本的運(yùn)行。合理結(jié)合 crontab ,  ps -ef ,kill 等命令。
       2.  perl  處理短小快 。
       3.  python 有比較復(fù)雜結(jié)構(gòu)和邏輯的。
     
    本文主要介紹 perl 的行級(jí)命令使用 ,力求 短 小 快
    #最簡(jiǎn)單的
    $ perl -'print "Hello World\n"'

    #處理文件 行
    $ perl --'print $_' file1


    #編碼轉(zhuǎn)換
    #如果 有需要 在使用下  encode("UTF-8", decode("GBK",$_));在 linux 下默認(rèn) utf-8

    perl -MEncode -ne 'print decode("GBK",$_);'  file.txt




    #正則使用
       #  if($_=~/.*\/(.*)$/){  print $1 ;}  這是perl 巨方便的地方 $1 xx  
    # next LINE 跳到下一個(gè)循環(huán)

    $ perl --'next LINE unless /pattern/; print $_'


    #去除換行 chomp
    perl -'print split(/\n/,"asg\n");'


    #像 awk 一樣 Begin End
    $ perl -ne 'END { print $t } @w = /(\w+)/g; $t += @w' file.txt 

    #像 awk -F"x" 一樣 切割行
    #-a 打開(kāi)自動(dòng)分離 (split)  模式
    #@F 為 切割后的 數(shù)組

    perl -F'\t' -ane '
     if($F[1]=~/侃侃/ and $F[2]=~/愛(ài)情啊/){
          print "$F[3]\t$F[4]\t$F[5]\n"
      }
    ' all2_data.sort.st

    實(shí)際處理:
     
    perl -F'\|\|' -ane '
     my $actor,$music ;
     if  ( $F[3] ){
      $music=$F[2];
      $actor=$F[3];
     }else{
      $music=$F[0];
      $actor=$F[1]; 
     }
      $music =~ tr/[A-Z]/[a-z]/;
      $music =~ s/\s*(.*)\s*\(.*\)/\1/g;
      $actor =~ tr/[A-Z]/[a-z]/;
      $actor =~ s/\s*(.*)\s*\(.*\)/\1/g;
    print "$actor-$music\n";
    ' ring.utf8.txt  |sort -u  > ring.actor_music.sort.utf8.txt &
    wc 
    -l ring.actor_music.sort.utf8.txt


    #像 sed 一樣替換
        # -i 和 sed 一樣 perl 輸出會(huì)替換調(diào) 源 file.txt
    $ perl --pe 's/\bPHP\b/Perl/g' file.txt


    #外部 傳參
    perl -ne'print "$ARGV[0]\t$ARGV[1]\n" ' file.txt 'par1' 'par2'
        #結(jié)果 ..  par1     par2 ..



    # 查詢出 重復(fù)列 次數(shù),并 列舉出來(lái)
    cut -d"     "  -2 .collection_mobile.data |perl -ne '
       END{
         while (($key,$value)=each(%a)){print $key,"=",$value,"\n";};
       }BEGIN{ %a =(); } 
       chomp;
       $a{$_}+=1; 
     
    '
    結(jié)果
    Ring=532895
    CRBT=68500
    RingBoxes=880
    Song=96765

     
    #一些實(shí)際使用 :)
    find . -name "*.mp3" | perl -pe 's/.\/\w+-(\w+)-.*/$1/' | sort | uniq
       perl -F'\t' -ane 'if($F[1]=~/$ARGV[0]/ and $F[2]=~/$ARGV[1]/){print "$F[3]\t$F[4]\t$F[5]\n"}' all2_data.sort.st '侃侃' '愛(ài)情啊'

    #與 find 合用 -e $ARGV[0] 批量 把 excel 倒成 文本 格式
    find . -maxdepth 1 -name "*xls" -exec perl -'
    require("/home/xj_liukaiyi/src/perl/excel/excelUtil.pl");
    my $file=$ARGV[0];
    sub myRead{
      
    my $str = "";
      
    for $tmp(@_){
        
    $str="$str$tmp\t";
      }
      
    $str="$str\n";
      
    system "echo \"$str\" >> $file.data ";
    }
    &parse_excel("$file",0,\&myRead);
    print "$file\n";
    ' {} \;




    參考:
    http://www.ibm.com/developerworks/cn/linux/sdk/perl/l-p101/index.html
    http://bbs.chinaunix.net/viewthread.php?tid=499434





    整理 m.tkk7.com/Good-Game
    posted on 2009-04-01 14:12 劉凱毅 閱讀(1945) 評(píng)論(2)  編輯  收藏 所屬分類: perl

    Feedback

    # re: perl 的幸福生活 2009-04-15 11:49 劉凱毅
    所謂的多線程哦
    sed -n '1,1000p' 什么的 就可以了
    :)
    ls mp3/ |sed -n '4000,6000p'|perl -ne '
    require "/home/xj_liukaiyi/src/perl/util/perlUtil.pl";
    my $tmp=$_;
    chomp($tmp);
    my $to="yd_MP3_stereo_48kbps";
    &set_log_input_file("log_mp3_48");
    unless ( (-e "$to/$tmp") && ($tmp=~/.*\..*/) ){
    &system_util("lame -S --resample 44.1 --abr 16 -m s -b 48 \"./mp3/$tmp\" \"./$to/$tmp\" ");
    }
    ' &

      回復(fù)  更多評(píng)論
      

    # re: perl 使用 2009-09-01 23:46 skynet
    交集
    cat ddata | perl -ne 'BEGIN{
    $p1="p1";
    $p2="p2";

    $ssplit="\t";


    }END{
    my @inter = grep {$a{$_}} keys %b; # 求交集
    print $p1,"=",join(",",keys %a),"\n";
    print $p2,"=",join(",",keys %b),"\n";
    print "交集:",scalar @inter," \n";
    }
    chomp;
    @lis=split /$ssplit/;
    if( $lis[1] eq $p1 ){
    $a{$lis[0]}++;
    }
    if( $lis[1] eq $p2 ){
    $b{$lis[0]}++;
    }

    '
      回復(fù)  更多評(píng)論
      

    主站蜘蛛池模板: 成人影片麻豆国产影片免费观看| 亚洲精品无播放器在线播放| 国产亚洲精品无码成人| 亚洲精品无码AV中文字幕电影网站 | 国产猛烈高潮尖叫视频免费| 性盈盈影院免费视频观看在线一区| 无码国产精品一区二区免费式直播| 2015日韩永久免费视频播放| 88av免费观看| aa级一级天堂片免费观看| 中文字幕人成无码免费视频| 在线免费视频一区二区| 国产高清在线免费| jlzzjlzz亚洲乱熟在线播放| 亚洲伊人成无码综合网 | 国产亚洲精品影视在线| 亚洲中文无码亚洲人成影院| 亚洲老熟女五十路老熟女bbw| 蜜芽亚洲av无码一区二区三区 | 亚洲噜噜噜噜噜影院在线播放 | 亚洲国产午夜精品理论片| 亚洲va成无码人在线观看| 亚洲码欧美码一区二区三区| 国产精品亚洲一区二区三区| 五月天婷婷免费视频| 国产一级淫片a免费播放口| 69视频在线观看免费| 成人免费a级毛片| 亚洲国产成人VA在线观看| 亚洲精品无码久久久久去q| 麻豆亚洲av熟女国产一区二| 亚洲Av无码一区二区二三区| WWW亚洲色大成网络.COM | 亚洲乱色熟女一区二区三区蜜臀| 白白色免费在线视频| 免费一区二区无码东京热| 18禁男女爽爽爽午夜网站免费| 成人免费视频试看120秒| 亚洲AV永久无码精品一区二区国产| 国产亚洲人成网站在线观看| 亚洲va在线va天堂va888www|