青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

在一般中尋求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

shell的效率不如perl或Python?

Posted on 2010-06-07 12:25 Prayer 閱讀(2638) 評論(0)  編輯 收藏 引用 所屬分類: Shell 、PERL
shell文本處理方面,主要是有sed,awk這兩把刀。

光給你個shell你進行文本處理是做不到的,當然簡單的還可以。

perl里有正則表達式引擎,能針對文本進行拆分替換等復雜操作,關鍵是,perl不用fork出新的進程來處理這些事情,而shell需要使用管道等通過這些sed,awk的進程來處理,至少就多出部分進程的開銷。

而且,管道這個東西,原本一個工具一次能完成的任務,在需要經過sed,和awk等多次管道。效率可想而知。

其實你這個問題問的有點弱智,SHELL是什么?

SHELL只是一個接口,大部分的功能全靠外部程序來完成。
而Perl是一種語言,基本上什么事情都能做。


老老實實學好一樣東西最實際。
當你參加面試的時候,如果可以自信的說自己熟練使用Shell或者Perl,那就相當不錯了。
效率之類的云云,具體問題具體分析吧,能解決工作中遇到的問題就行。


看出來樓主比較關心文本處理,下面這個比方不一定恰當,但已經很接近了:


  • 相比較而言,awk、sed就像死板手,而perl和python是個活板手。
  • awk和sed專注于文本處理,大部分情況效率要優于perl等。很簡單,比如列文件,誰能有cat的效率高?
  • 如果你是個懶惰的SA,那就用shell吧。如果是geek或者你的工作需要復雜的邏輯,并且還會出現許多無法預知的新要求,那就用perl等好了。


沒那么多關鍵字,是打字手誤,但是1-10萬數量級的關鍵字,在千萬行級文本文件中搜索,這個量還是有的。

來段sed multiple keywords search in batch的代碼,歡迎其他新想法。
  1.                 local num_in_batch=300
  2.                 local batch_counter=0
  3.                 local log_display_in_batch=1000
  4.                 local bbl_counter=0
  5.                 local num_in_bl_counter=0
  6.                 declare -a bbl_arr=()
  7.                 local keyword=
  8.                 local keyword_del

  9.                
  10.                 logMsg $debug_flag null "Starting blacklist checking in batch."

  11.                 for msisdn in `cut -d: -f2 $tmpfile`; do       
  12.                         if [ $batch_counter -eq $num_in_batch ]; then
  13.                                 keyword="${keyword}$msisdn"
  14.                                 bbl_arr=(`sed -rn "/$keyword/p" $filter_file`)
  15.                                 local num=${#bbl_arr[@]}
  16.                                 ((num_in_bl_counter+=num))
  17.                                 if [ $num -gt 1 ]; then
  18.                                         keyword_del=`echo ${bbl_arr[@]} | tr " " "|"`
  19.                                         sed -ri "/${keyword_del}/d" $inputfile
  20.                                 fi
  21.                                 keyword=
  22.                                 batch_counter=0
  23.                         else
  24.                                 keyword="${keyword}$msisdn|"
  25.                         fi
  26.                         if [ $((bbl_counter%log_display_in_batch)) -eq 0 ]; then
  27.                                 logMsg $debug_flag null "$bbl_counter MSISDN processed."
  28.                         fi
  29.                         ((batch_counter++))
  30.                         ((bbl_counter++))
  31.                 done
復制代碼
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区二区三区在线观看视频| 国产欧美日韩免费看aⅴ视频| 午夜精品免费| 日韩亚洲精品在线| 国产亚洲二区| 激情综合色综合久久综合| 欧美美女bb生活片| 久久夜色精品国产欧美乱极品| 99热在这里有精品免费| 久久天堂成人| 红桃视频成人| 最新热久久免费视频| 欧美大片免费久久精品三p| 久久亚洲图片| 国产精品成av人在线视午夜片| 欧美日韩 国产精品| 欧美午夜剧场| 国产综合久久| 亚洲一区二区综合| 亚洲国产高清aⅴ视频| 亚洲一区二区在线视频| 久久青草欧美一区二区三区| 久久久福利视频| 亚洲欧美日韩在线不卡| 欧美在线免费视屏| 欧美国产亚洲精品久久久8v| 亚洲国产欧美一区| 亚洲主播在线播放| 欧美老女人xx| 亚洲大胆人体在线| 国产精品一区二区女厕厕| 亚洲美女精品久久| 久久国产精品一区二区| 91久久精品视频| 美女视频黄 久久| 国产综合久久久久久| 久久国产日韩| 久久性色av| 亚洲国产美女精品久久久久∴| 久久久久久一区| 久久婷婷国产麻豆91天堂| 亚洲国产欧美日韩| 欧美国产一区二区| 欧美精品三级日韩久久| 国产一区二区三区观看| 亚洲综合欧美日韩| 亚洲国产老妈| 免费久久99精品国产自| 欧美久久一级| 篠田优中文在线播放第一区| 久久精品视频一| 亚洲区一区二| 日韩一级黄色av| 国产字幕视频一区二区| 免费观看亚洲视频大全| 国产精品视频男人的天堂| 亚洲国产成人不卡| 亚洲福利视频网| 猫咪成人在线观看| 欧美大片免费看| 亚洲国产老妈| 欧美日本不卡| 午夜精品久久久久久久99樱桃| 亚洲午夜一区| 国产精品一区二区三区观看| 国产精品欧美一区喷水| 欧美日韩高清在线| 久久国产66| 国产精品免费网站| 亚洲视频电影图片偷拍一区| 久久亚洲综合色| 亚洲自拍电影| 一色屋精品视频在线看| 欧美日韩国产综合一区二区| 欧美一区二区在线观看| 亚洲伦理在线免费看| 欧美成人精品高清在线播放| 激情成人在线视频| 免费不卡在线观看| 一本色道久久综合亚洲精品婷婷| 一区二区三区视频在线| 国产精品国产三级国产aⅴ入口| 亚洲精品国产精品乱码不99| 久久爱另类一区二区小说| 久久深夜福利免费观看| 亚洲精品影院| 国产精品丝袜91| 老**午夜毛片一区二区三区| 亚洲九九九在线观看| 久久久亚洲精品一区二区三区| 亚洲黄色免费| 国产精品视频你懂的| 欧美日韩在线综合| 久久亚裔精品欧美| 午夜精品久久久久久久99水蜜桃| 巨乳诱惑日韩免费av| 亚洲人人精品| 国产午夜精品视频| 国产精品美女主播在线观看纯欲| 久久视频一区二区| 一区二区高清视频| 亚洲精品中文字幕女同| 老鸭窝91久久精品色噜噜导演| 亚洲第一网站免费视频| 欧美深夜影院| 欧美日韩情趣电影| 欧美大尺度在线| 久久久www免费人成黑人精品 | 亚洲成人资源网| 国产精品女主播在线观看| 欧美日韩精品高清| 欧美日韩国产小视频| 欧美精品自拍| 国产精品家庭影院| 国产专区一区| 亚洲人成人99网站| 亚洲电影观看| 亚洲欧美成人一区二区三区| 欧美国产日韩精品| 亚洲第一在线视频| 99国内精品久久| 欧美亚洲免费| 麻豆精品视频在线| 日韩午夜在线电影| 亚洲综合大片69999| 亚洲影院污污.| 一本色道久久综合狠狠躁篇怎么玩| 午夜精品久久久久久久蜜桃app| 蜜桃久久精品乱码一区二区| 国产欧美91| 亚洲欧美在线高清| 亚洲国产裸拍裸体视频在线观看乱了中文 | 在线性视频日韩欧美| 亚洲一区精品在线| 久久综合中文字幕| 欧美日本一道本| 国产日韩精品视频一区| 影音先锋在线一区| 99精品久久久| 久久免费视频一区| 亚洲欧美国产日韩中文字幕| 久久久久久电影| 国产午夜精品美女视频明星a级 | 欧美成人一区二区三区在线观看 | 性欧美xxxx大乳国产app| 欧美国产免费| 狠狠88综合久久久久综合网| 欧美一站二站| 一区二区三区久久| 欧美性猛交xxxx乱大交蜜桃| 亚洲风情亚aⅴ在线发布| 美女成人午夜| 久久9热精品视频| 免费成人网www| 性色av一区二区三区在线观看| 国产精品剧情在线亚洲| 中文精品视频| 亚洲免费电影在线| 性欧美1819sex性高清| 久久这里有精品15一区二区三区| 欧美一区二区三区在线播放| 一区在线免费| 亚洲精品乱码| 国产精品亚洲综合色区韩国| 香蕉av777xxx色综合一区| 亚洲一区二区三区在线看| 国产精品社区| 亚洲动漫精品| 国产精品va| 欧美激情无毛| 欧美视频日韩视频| 久久嫩草精品久久久久| 欧美日韩国产三区| 老司机精品福利视频| 欧美黑人在线播放| 欧美日产国产成人免费图片| 欧美在线观看你懂的| 老巨人导航500精品| 亚洲精品美女91| 午夜免费在线观看精品视频| 亚洲黄色性网站| 欧美伊人久久| 一区二区三区高清不卡| 快she精品国产999| 久久五月天婷婷| 国内精品久久久久久| 亚洲综合日韩在线| 西西裸体人体做爰大胆久久久| 欧美日韩在线一区二区| 一区二区三区视频在线| 亚洲一区久久久| 国产精品激情av在线播放| 91久久香蕉国产日韩欧美9色| 亚洲福利视频一区二区| 久久久欧美精品| 亚洲破处大片| 国产精品99久久不卡二区| 欧美成人精品一区二区| 欧美xx视频| 欧美精品一区二区三区蜜桃|