Upgrade to Pro — share decks privately, control downloads, hide ads and more …

alt grep

864fdf25e50e2d92ebd5cb13db804bf9?s=47 MSR
April 30, 2016
1.4k

alt grep

代替grep速度比較 @第22回シェル芸勉強会大阪サテライト

grepと代替grepの所用時間を計測し、比較してみました。
※結果の単位は秒
※環境、検索対象が異なるので、厳密な速度比較ではありません

864fdf25e50e2d92ebd5cb13db804bf9?s=128

MSR

April 30, 2016
Tweet

Transcript

  1. ୅ସHSFQ !γΣϧܳษڧձେࡕαςϥΠτ

  2. ໨࣍ w ࣗݾ঺հ w ιʔείʔυݕࡧ w #4%HSFQͱ(/6HSFQ w ୅ସHSFQ w

    ϕϯνϚʔΫ
  3. ࣗݾ঺հ w ϋϯυϧωʔϜ.43 w ݱࡏٻ৬த w $ ϓϩάϥϛϯάɺαʔόʔߏஙӡ༻͕ಘҙ w 8FCϒϥ΢β࡞ͬͯ·͢


    IUUQBQQUVOHTUFOTUBSUOFU w $ISPNJVNͷιʔείʔυΛ͍ͬͯ͡νϡʔχϯά ΍ͬͯ·͢
  4. ιʔείʔυݕࡧ w ιʔείʔυݕࡧΛίϚϯυϥΠϯ͔Β΍Γ͍ͨͱ ͖ɺͲ͏͠·͔͢ʁ

  5. (JUϦϙδτϦ಺ͳΒHJUHSFQ w (JUϦϙδτϦ಺Λݕࡧ͢Δ৔߹͸HJUHSFQΛ࢖͍ ·͠ΐ͏ w HSFQɺ୅ସHSFQΑΓ଎͍ w ϦϙδτϦͰ؅ཧ͞Ε͍ͯΔϑΝΠϧ͔͠ݕࡧͰ͖ ͳ͍ͷͰཁ஫ҙ

  6. HSFQͷ৔߹ w खͬऔΓૣ͘࢖͑Δ w ֦ுࢠΛݶఆͨ͠Γɺআ֎৚͕݅ೖΔͱ໘౗
 ΍Βͳ͍ͱ͕͔͔࣌ؒΓ͗͢Δ w σΟϨΫτϦআ֎Φϓγϣϯ͕ొ৔͢Δ໿೥લ·Ͱ͸ɺ HSFQ୯ಠͰ͸ࣄ্࣮ෆՄೳͩͬͨ
 Ͳ͏ʹ͔͢ΔͨΊʹ਺ʑͷγΣϧ͕ܳ஀ੜʜͨ͠

     w ߴ଎Խखஈʹ-"/($͕͋Δ͕஌Βͳ͍ਓ͕গͳ͘ͳ͍
 ˞ࠓ͸ੲͷ࿩ (/6HSFQ͔͠ޮՌ͕ͳ͍͔Β
  7. ୅ସHSFQ͸Ͳ͏ w ιʔείʔυݕࡧʹಛԽͨ͠୅ସHSFQ͕ଓʑͱొ৔ w BDL
 1FSMͰهड़ɻσϑΥϧτͰ࠶ؼݕࡧɺHJUͳͲআ֎ɻϑΝΠϧछผΦϓ γϣϯ͋Γɻ୅ସHSFQͷઌۦ͚  w 5IF4JMWFS4FBSDIFS

    BH 
 $Ͱهड़ɻBDLಉ౳ػೳΛ࣮૷ɻHJUJHOPSFʹॻ͔ΕͨϑΝΠϧΛࣗಈ తʹআ֎ɻ65'Ҏ֎ͷ೔ຊޠจࣈίʔυඇରԠ w IJHIXBZ IX 
 $Ͱهड़ɻࠃ࢈ɻϑΝΠϧछผΦϓγϣϯͳ͠ɻ৚݅ʹΑͬͯ͸4&(7 ͰམͪΔ w ΄͔ɺQU΍TJGUͳͲʜ
  8. ୅ସHSFQͷ໰୊఺ w ίϚϯυؒͷҾ਺ͷޓ׵ੑ͕ͳ͍
 ྫ B w ࣮૷͞Ε͍ͯΔػೳʹ͕ࠩ͋Δ
 ྫ ϑΝΠϧछผݶఆػೳͳͲ w

    ރΕ͍ͯͳ͍ͨΊɺ҆ఆੑʹ໰୊͕͋Δ΋ͷ͕ଘࡏ
  9. ଎౓ൺֱ w $ISPNJVNͷ(JUϦϙδτϦ w ιʔείʔυαΠζ໿(# HJUͳͲؚ·ͳ͍ 
 ϑΝΠϧ਺  $ISPNJVNϦϙδτϦ಺

     w UJNFίϚϯυΛ࢖༻ͯ͠ॴ༻࣌ؒΛܭଌ w ໨త௒େن໛ͳιʔείʔυ͔ΒͲΕ͚ͩ଎݁͘ՌΛ ग़ྗͰ͖Δ͔  w ؀ڥʹΑΓେ͖͘มΘΔͷͰ݁Ռ͸ࢀߟఔ౓ʹ
  10. ൺֱର৅  049ඪ४HSFQ  (/6HSFQ HHSFQ   BDL 

    5IF4JMWFS4FBSDIFS BH   IJHIXBZ IX   HJUHSFQ
  11. ൺֱ৚݅ w ඪ४HSFQɺ(/6HSFQ͸࠶ؼ S ɺߦ൪߸෇༩ O ɺHJUσΟ ϨΫτϦΛআ֎͢ΔΦϓγϣϯ FYDMVEFEJS Λ௥Ճ


    ὎HJUJHOPSFΛݟΔ΋ͷͱൺ΂ͯෆར w ඪ४HSFQɺ(/6HSFQ͸-"/($Ͱௐࠪ w Ωʔϫʔυ4IPVME$SFBUF8FC$POUFOUT w ࠷খݶͷΦϓγϣϯͱϑΝΠϧछผݶఆΦϓγϣϯͷछ ྨܭଌ
  12. ؀ڥ .BD#PPL1SP`` $16*OUFM$PSF%VP1 ()[ 
 ϝϞϦ(#
 σΟεΫ(#44%׵૷ࡁ )(E 
 04049


    9DPEFಋೖࡁ
  13. Πϯετʔϧ  w 049Ͱ͋Ε͹ɺ)PNFCSFXͰ؆୯ʹखʹೖΔ w )PNFCSFX͕ೖ͍ͬͯͳ͚Ε͹ೖΕΔ
 $ /usr/bin/ruby -e "$(curl

    -fsSL https:// raw.githubusercontent.com/Homebrew/install/ master/install)” w BDLΛೖΕΔ
 $ brew install ack w (/6HSFQΛೖΕΔ
 $ brew tap homebrew/dupes
 $ brew install homebrew/dupes/grep
  14. Πϯετʔϧ  w 5IF4JMWFS4FBDIFSΛೖΕΔ
 $ brew install the_silver_searcher w IJHIXBZΛೖΕΔ


    $ brew tap tkengo/highway
 $ brew install highway w $ISPNJVNϦϙδτϦΛೖख
 $ git clone https://chromium.googlesource.com/ chromium/tools/depot_tools.git
 $ export PATH=`pwd`/depot_tools:"$PATH"
 $ fetch —-nohooks chromium
  15. ݁Ռ         

        HSFQ HHSFQ BDL BH IX HJUHSFQ      
  16. ݁Ռ ϑΝΠϧछผݶఆ        

         HSFQ HHSFQ BDL BH    
  17. ·ͱΊ w ϦϙδτϦ಺ݶఆͳΒHJUHSFQΛ࢖͏΂͠ w ୅ସHSFQ͸ΦϓγϣϯΛࢦఆ͠ͳͯ͘΋HSFQΑΓ଎͍ BDL আ͘  w ϑΝΠϧछผݶఆ͢Ε͹HSFQ΋ͦΜͳʹ஗͘ͳ͍

    w (/6HSFQ͕ҙ֎ͱ଎͍ w 049ඪ४HSFQ͸஗͍ w ଎౓IXBHHHSFQHSFQBDL
  18. ࢀߟจݙ w ߴ଎Խͨ͠(/6HSFQΛΠϯετʔϧ͢Δ
 IUUQRJJUBDPNRVBUUSP@JUFNTFGCFGGC w BDL
 IUUQCFZPOEHSFQDPN w 5IF4JMWFS4FBSDIFS
 IUUQTHJUIVCDPNHHSFFSUIF@TJMWFS@TFBSDIFS

    w IJHIXBZ
 IUUQULFOHPHJUIVCJPCMPHSFMFBTF IJHIXBZ