LinuxãMacã§ãã䜿ãããã³ãã³ãã«grepã³ãã³ãããããå€ããã䜿ãããŠããã³ãã³ãã®äžã€ã§ãããã¹ããã¡ã€ã«ããã€ãããæµããŠããããã¹ãããŒã¿ã«å¯ŸããŠäžèŽåŠçãšãã£ããã£ã«ã¿åŠçãè¡ãããšãã§ãããæå®ãããã¿ãŒã³ãæ£èŠè¡šçŸã«äžèŽããè¡ãåãåºããããéã«äžèŽããªãè¡ãåãåºããããäžèŽããéšåã®ã¿ãåãåºããããšã匷åãã€æè»ãªåŠçãæäŸããŠããã仿¥ã§ã¯å®è£ ç³»ãšããŠGNU grepã䜿ãããããšãå€ãããã®å®è£ ç³»ã¯åŠçãé«éã§ããããšã§ãç¥ãããŠããã
LinuxãMacã䜿ã£ãŠãããªãgrepã³ãã³ãã®äœ¿ãæ¹ã¯ç¿åŸããŠãããããç¿åŸã®æ¹æ³ã¯ããã€ãããããOpensource.comã2021幎3æ18æ¥(ç±³åœæé)ããPractice using the Linux grep commandïœOpensource.comãã«ãŠæ²èŒããèšäºãå ¥éèšäºãšããŠåèã«ãªããgrepã®ç¿åŸãå®éã®äœ¿çšäŸã«åãããŠèª¬æããŠããã以äžããã®ãã€ã³ãã玹ä»ãããã
grepã³ãã³ãã®åºæ¬çãªäœ¿ãæ¹
grepã³ãã³ãã¯ç¬¬1åŒæ°ã«ãã¿ãŒã³ãæå®ãã第2åŒæ°ã«ããã¹ããã¡ã€ã«ã®ãã¹ãæå®ããããã¿ãŒã³ã®åã«ãªãã·ã§ã³ãæå®ã§ããã»ããããã¹ããã¡ã€ã«ãæå®ãã代ããã«ãã€ãã©ã€ã³ããªãã€ã¬ã¯ãã§ã¹ããªãŒã ãæ¥ç¶ããŠäœ¿çšããããšãå¯èœã
grepã³ãã³ãã®åºæ¬çãªäœ¿ãæ¹
grep ãã¿ãŒã³ ããã¹ããã¡ã€ã«
grepã³ãã³ãã¯æå®ããããã¿ãŒã³ã«äžèŽããæååãå«ããè¡ããåºåããã倧æåãšå°æåã¯åºå¥ããŠåŠçãããã
èšäºã¯ãããããããåªå ããŠããããããæå®ãããªãã·ã§ã³ã«ãã³ã°åã䜿ã£ãŠãããæ¥åžžçã«äœ¿ãå Žåããã³ã°åã¯ç ©éãªã®ã§ãå®éã«ã¯çããªãã·ã§ã³åã䜿ãããšã«ãªãã--ignore-caseãªãã·ã§ã³ã¯ã-iããšåããªã®ã§ãå®éã«ã¯ã-iãã䜿ãããšãå€ããOpensource.comã®èšäºã¯æåŸã«ããŒãã·ãŒãã玹ä»ããŠããããã¡ãã§ã¯ãã³ã°åã§ã¯ãªãçããªãã·ã§ã³ã䜿ãããŠããã
倧æåå°æåãç¡èŠããæ¹æ³
grepã§ã¯ã--ignore-caseãªãã·ã§ã³ãæå®ããããšã§ã倧æåãšå°æåãç¡èŠããŠäžèŽåŠçãè¡ãããããšãã§ããã
倧æåãšå°æåãç¡èŠããŠäžèŽåŠçãè¡ãæ¹æ³
grep --ignore-case ãã¿ãŒã³ ããã¹ããã¡ã€ã«
äŸãã°ã--ignore-caseãæå®ããå Žåããã¿ãŒã³ã«ãtheããæå®ãããšãTHEããTheããtheãã®ãã¹ãŠã«äžèŽããããã«ãªãã
äžèŽããªãè¡ãåºåããæ¹æ³
grepã¯--invert-matchãªãã·ã§ã³ãæå®ããããšã§ãäžèŽããªãè¡ãåºåãããããšãã§ããã--invert-matchãªãã·ã§ã³ãæå®ããããšäžèŽããè¡ãæé€ãããšãã£ãåãã«ãªãã
äžèŽããè¡ãåºåãããªãæ¹æ³
grep --invert-match ãã¿ãŒã³ ããã¹ããã¡ã€ã«
ãã³ãã³ãã®åºåããç¹å®ã®è¡ãåé€ãããããããã¹ããã¡ã€ã«ããç¹å®ã®è¡ãåé€ãããããšãã£ãå Žåã«æŽ»çšã§ããã
æ£èŠè¡šçŸãäœ¿ãæ¹æ³
grepã³ãã³ãã¯ãã¿ãŒã³ã«æ£èŠè¡šçŸãæå®ããããšãã§ããããã®å Žåãæ£èŠè¡šçŸã«äžèŽããè¡ãåºåãããããšã«ãªãã
æ£èŠè¡šçŸã䜿çšããæ¹æ³
grep æ£èŠè¡šçŸ ããã¹ããã¡ã€ã«
èšäºã§ã¯ãæå®ããæ£èŠè¡šçŸã®äŸãšããŠæ¬¡ã®èšè¿°æ¹æ³ãåãäžããŠããã
| æ£èŠè¡šçŸ | å 容 |
|---|---|
| . | 1æåã«äžèŽã |
| â | 0æå以äžã®æååã«äžèŽã |
| + | 1æå以äžã®æååã«äžèŽã |
| {æ°å} | æ°ååäžèŽã |
| [æåãªã¹ã] | æåãªã¹ãã«å«ãŸããæåã«äžèŽã |
ïŒæ³šïŒããæ£èŠè¡šçŸãæå®ããŠããŸãåäœããªãã£ãå Žåã--extended-regexpãæå®ããå¿ èŠãããããšãããïŒã
äžèŽããéšåã®ã¿ãåºåããæ¹æ³
grepã³ãã³ãã¯ãã¿ãŒã³ã«äžèŽãããè¡ããåºåãããããã«å¯ŸããŠ--only-matchingãªãã·ã§ã³ãæå®ãããšããã¿ãŒã³ã«äžèŽãããéšåãã ãã衚瀺ãããã
äžèŽãããéšåãã®ã¿ãåºåããæ¹æ³
grep --only-matching ãã¿ãŒã³ ããã¹ããã¡ã€ã«
ãã¿ãŒã³ã«æ£èŠè¡šçŸãæå®ããã°ããã®æ£èŠè¡šçŸã«äžèŽãããéšåãã ããæœåºããããšãã§ãããããã¹ããã¡ã€ã«ããæäžã®URLã®ã¿ãæœåºããããšãã£ãå Žåã--only-matchingãªãã·ã§ã³ã䜿çšããã°è¡ã®ã»ãã®éšåã¯åé€ããŠURLã®éšåã ããçŽæ¥æœåºããããšãå¯èœã
ããã¹ããã¡ã€ã«ããåãåºããURLãçŽæ¥ããŠã³ããŒããããµã³ãã«ã³ãã³ã
grep --only-matching http\:\/\/.*æ¡åŒµå ããã¹ããã¡ã€ã« |
curl --remote-name
grepã³ãã³ãã®--only-matchingãªãã·ã§ã³ã¯äŸ¿å©ãªãªãã·ã§ã³ãªã®ã§ãè¡ããåãåºãããšãã§ããªããšæã£ãŠããå Žåããã²äžåºŠäœ¿ã£ãŠã¿ãŠæ¬²ãããªãã·ã§ã³ã ã
ããŒãã·ãŒããããŠã³ããŒããã
èšäºã§åãäžããŠããgrepã³ãã³ãã®æ©èœã¯ãã䜿ãããæ©èœã ãå®éã«ã¯ãgrepã³ãã³ãã¯ãã£ãšå€ãã®æ©èœãæäŸããŠãããOpensource.comã¯ç޹ä»ãããªãã·ã§ã³ãããå€ãã®ãªãã·ã§ã³ã®åäœè§£èª¬ãå«ãããŒãã·ãŒããæäŸããŠãããèå³ããããŠãŒã¶ãŒã«å¯ŸããŠããŠã³ããŒããèŠããŠãããããŒãã·ãŒãã«ã¯ãã³ã°ã®ãªãã·ã§ã³åã§ã¯ãªããçããªãã·ã§ã³åãèšèŒãããŠãããããå®çšçãªå 容ã«ãªã£ãŠããã




